繁体   English   中英

如何仅显示图像中的矩形?

[英]How to show just the rectangles in an image?

我得到了这个功能:

import matplotlib.patches as mpatches

from skimage.measure import regionprops

import math

facteurforme = lambda r: (4 * math.pi * r.area) / (r.perimeter * r.perimeter)

circ = lambda r: (r.perimeter)/(r.equivalent_diameter)

我应该完成代码以仅检测由圆形和矩形组成的图像中的矩形,然后使用Python 3将检测到的形状放入一个框中。

我知道如何使用facteurforme

请帮忙!。

facteurforme是一个lambda

Lambda 表达式(有时称为 lambda 形式)用于创建匿名函数。 表达式 lambda 参数:表达式产生一个函数对象。 未命名对象的行为类似于定义了以下内容的函数对象:

def <lambda>(parameters): return expression

由于您应该使用regionprops并且facteurforme使用r.arear.perimeter它们是 regionprops 的属性,因此很明显您应该使用一组区域属性作为 lambda 的参数。

facteureforme 计算给定的一组区域属性的等周商

对于一个圆,这个商数仅为 1(或在非理论情况下非常接近于 1),而对于其他任何情况,商数都小于 1。 您可以使用此值来区分圆形和矩形。

另见形状系数:圆度

r.equivalent_diameter应该更名为r.equivalent_diameterfloat顺便说一句。

要开始你的家庭作业,我建议你在网上搜索 regionprops 教程/示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM