def drawCVImages(self):
        for handle in self.CVHandles:
            self.canvas.delete(handle)
        self.CVHandles = []

        cv2image = GestureProcessor.getRGBAFromBGR(self.gp.original, self.width / 2, self.height / 2)
        self.imagetk = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        self.gp.draw()
        cv2image = GestureProcessor.getRGBAFromBGR(self.gp.drawingCanvas, self.width / 2, self.height / 2)
        self.imagetk2 = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        cv2image = GestureProcessor.getRGBAFromGray(self.gp.thresholded, self.width / 2, self.height / 2)
        self.imagetk3 = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        self.CVHandles.append(self.canvas.create_image(0, 0, image=self.imagetk, anchor="nw"))
        self.CVHandles.append(self.canvas.create_image(1920, 1080, image=self.imagetk2, anchor="se"))
        self.CVHandles.append(self.canvas.create_image(0, 1080, image=self.imagetk3, anchor="sw"))

        self.CVHandles.append(self.canvas.create_text(1920, 0, text=self.gp.lastAction, anchor="ne", font="15"))
        self.CVHandles.append(
            self.canvas.create_text(
                1920, 20, text="Distance: " + str(round(self.gp.handDistance, 3)), anchor="ne", font="15"
            )
        )
        self.CVHandles.append(
            self.canvas.create_text(1920, 40, text=str(self.gp.getScaledCenter()), anchor="ne", font="15")
        )
    def drawCVImages(self):
        for handle in self.CVHandles:
            self.canvas.delete(handle)
        self.CVHandles = []

        cv2image = GestureProcessor.getRGBAFromBGR(self.gp.original,
                                                   self.width / 2,
                                                   self.height / 2)
        self.imagetk = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        self.gp.draw()
        cv2image = GestureProcessor.getRGBAFromBGR(self.gp.drawingCanvas,
                                                   self.width / 2,
                                                   self.height / 2)
        self.imagetk2 = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        cv2image = GestureProcessor.getRGBAFromGray(self.gp.thresholded,
                                                    self.width / 2,
                                                    self.height / 2)
        self.imagetk3 = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        self.CVHandles.append(
            self.canvas.create_image(0, 0, image=self.imagetk, anchor="nw"))
        self.CVHandles.append(
            self.canvas.create_image(1920,
                                     1080,
                                     image=self.imagetk2,
                                     anchor="se"))
        self.CVHandles.append(
            self.canvas.create_image(0, 1080, image=self.imagetk3,
                                     anchor="sw"))

        self.CVHandles.append(
            self.canvas.create_text(1920,
                                    0,
                                    text=self.gp.lastAction,
                                    anchor="ne",
                                    font="15"))
        self.CVHandles.append(
            self.canvas.create_text(1920,
                                    20,
                                    text="Distance: " +
                                    str(round(self.gp.handDistance, 3)),
                                    anchor="ne",
                                    font="15"))
        self.CVHandles.append(
            self.canvas.create_text(1920,
                                    40,
                                    text=str(self.gp.getScaledCenter()),
                                    anchor="ne",
                                    font="15"))
예제 #3
0
    def drawCVImages(self):
        for handle in self.CVHandles:
            self.canvas.delete(handle)
        self.CVHandles = []

        cv2image = GestureProcessor.getRGBAFromBGR(self.gp.original,
                                                   self.width / 2,
                                                   self.height / 2)
        self.imagetk = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        self.gp.draw()
        cv2image = GestureProcessor.getRGBAFromBGR(self.gp.drawingCanvas,
                                                   self.width / 2,
                                                   self.height / 2)
        self.imagetk2 = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        cv2image = GestureProcessor.getRGBAFromGray(self.gp.thresholded,
                                                    self.width / 2,
                                                    self.height / 2)
        cv2image = GestureProcessor.getMaskedResized(self.gp.original,
                                                    self.width / 2,
                                                    self.height / 2,
                                                    self.gp.mask)
        self.imagetk3 = ImageTk.PhotoImage(image=Image.fromarray(cv2image))

        self.CVHandles.append(self.canvas.create_image(0, 0, image=self.imagetk,
                              anchor="nw"))
        self.CVHandles.append(self.canvas.create_image(HEIGHT, WIDTH,
                              image=self.imagetk2, anchor="se"))
        self.CVHandles.append(self.canvas.create_image(0, WIDTH,
                              image=self.imagetk3, anchor="sw"))

        self.CVHandles.append(self.canvas.create_text(HEIGHT, 0,
                              text=self.gp.lastAction, anchor="ne",
                              font="15"))
        self.CVHandles.append(self.canvas.create_text(HEIGHT, 20,
                              text="Distance: " + str(round(
                                                      self.gp.handDistance, 3)),
                              anchor="ne", font="15"))
        self.CVHandles.append(self.canvas.create_text(HEIGHT, 40,
                              text=str(self.gp.getScaledCenter()),
                              anchor="ne", font="15"))
        if self.write_path_to_file:
            print("writing...")
            #center = self.gp.getScaledCenter()
            center = self.gp.getScaledFarthest()
            x,y = 2048*center[0],2048*(1-center[1])
            self.path_file.write('{},{}\n'.format(y,x))