小编Mia*_*nen的帖子

如何获取使用套索选择器绘制的区域数组?

我对 Python 完全陌生,但我想做的是在图像中绘制一个区域,然后对其进行分析。这应在 GUI 内完成。我的程序现在可以用套索选择器绘制一个区域(感谢http://matplotlib.org/examples/event_handling/lasso_demo.html) 并且顶点保存在一个 numpy 数组中。我希望将整个区域保存为数组(或矩阵)。是否有内置函数可以做到这一点?我是否需要制作一个 for 循环和 if 语句并遍历图像中的所有元素并检查哪个元素在里面,哪个不在。如果是这种情况,我不知道该怎么做,因为顶点数组中的元素不是整数且不成对(即第 45 行,第 3 列中没有一个顶点,第 17 列中没有一个顶点)。我混合使用 tkinter、matplotlib、numpy 等等。(当然有关于如何对矩形执行此操作的教程,我不能将其应用于该区域。)

简而言之:我想要的是一个 numpy 数组,其中包含我绘制的区域内的所有元素及其像素值。该程序应能够更改该区域,然后将其替换为旧图像。

from tkinter import *

from matplotlib.widgets import LassoSelector
import matplotlib.image as mpimg
from pylab import *
from matplotlib import path
from tkinter.filedialog import askopenfilename
import tkinter as tk
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg

global fig, v
fname = "bild3.png" #Starting with file

def onselect(verts):
    global v, length_y
    print(verts)
    p = path.Path(verts) #path array of verts
    print(v) …
Run Code Online (Sandbox Code Playgroud)

python user-interface roi

4
推荐指数
1
解决办法
2869
查看次数

标签 统计

python ×1

roi ×1

user-interface ×1