Как сохранить четыре координаты в массиве NumPy? - PullRequest
0 голосов
/ 26 мая 2020

Я пытаюсь сохранить значения координат в массиве NumPy, которые генерируются щелчком мыши по изображению. На самом деле я пытаюсь сохранить все четыре угловых координаты в одном массиве NumPy (b).

Пожалуйста, поймите с помощью кода,

from tkinter import *
from tkinter.filedialog import askopenfilename
from PIL import Image, ImageTk
import numpy as np
import array as arr

if __name__ == "__main__":
    root = Tk()

    i = 0

    a = np.float32([[0,0], [0,0], [0,0], [0,0]])
    b = np.float32([[0,0]])

    frame = Frame(root, bd=2, relief=SUNKEN)
    frame.grid_rowconfigure(0, weight=1)
    frame.grid_columnconfigure(0, weight=1)
    xscroll = Scrollbar(frame, orient=HORIZONTAL)
    xscroll.grid(row=1, column=0, sticky=E+W)
    yscroll = Scrollbar(frame)
    yscroll.grid(row=0, column=1, sticky=N+S)
    canvas = Canvas(frame, bd=0, xscrollcommand=xscroll.set, yscrollcommand=yscroll.set)
    canvas.grid(row=0, column=0, sticky=N+S+E+W)
    xscroll.config(command=canvas.xview)
    yscroll.config(command=canvas.yview)
    frame.pack(fill=BOTH,expand=1)

    img = ImageTk.PhotoImage(Image.open("org1.png"))

    canvas.create_image(0,0,image=img,anchor="nw")
    canvas.config(scrollregion=canvas.bbox(ALL))


    def printcoords(event):

        b[i] = [event.x, event.y]
        print(b)

    canvas.bind("<Button 1>",printcoords)
    root.mainloop()

1 Ответ

0 голосов
/ 26 мая 2020

Используйте список и функцию добавления, затем преобразуйте его в numpy массив

...