1
import diplib as dip
from matplotlib import pyplot as plt
#reading video
vid = dip.ImageReadICS(r'C:\Users\mrtij\.spyder-py3\20211123_152822_capture.ics')
vid = vid[0:-1, 0:-1, 325:3149]
smvid = dip.Gauss(vid, [2,2,0])

for i in range(1000, 1001):
    img = smvid[0:-1, 0:-1, i]

    imgmask = dip.IsodataThreshold(img)
    imgmask = dip.Label(imgmask)

    measuremnt = dip.MeasurementTool.Measure(imgmask, img)
    print(measurment)

我正在尝试在分辨率相对较低的视频 20211123_152822_capture.ics 文件中查找 blob 的位置和大小。首先我添加一个平滑过滤器,然后添加两个掩蔽过滤器。然而,MeasurementTool.Measure 函数只返回大小而不是我的 blob 的位置。我找不到如何解决这个问题,我想也许这里有人可以提供帮助。编辑:我在这里只查看一个帧,我计划保存每个帧上每个 blob 的坐标,因此是 for 循环。

4

1 回答 1

1

想通了,需要使用 MeasurementTool.Measure(imgmask, img, ['Size', 'Gravity'])

于 2021-11-28T13:27:15.520 回答