select_shape_proto算子的几种特征模式含义解析
select_shape_proto是一个非常有用的region筛选算子,但是由于难以理解,因此一般人使用得不是太多。
算子签名如下:
select_shape_proto(Regions, Pattern : SelectedRegions : Feature, Min, Max : )
其中Feature可以取这7种模式:'distance_center'、'distance_contour'、'distance_dilate'、'fits'、'overlaps_rel'、'overlaps_abs'、'covers'。
下面逐个解析。
提供一张图供读者研究验证:

select_shape_proto(Regions, Pattern, SelectedRegions, 'distance_center', 0 ,60)
distance_center:判断Regions中每个region的中心(area_center)距离Pattern中心的距离,Min和Max控制距离的下限和上限,可以取负数。
distance_contour:判断Regions中每个region的边缘距离Pattern边缘的距离,Min和Max控制距离的下限和上限,可以取负数。
需要注意的是,如果Pattern中的区域是不连续的,也就说Pattern通过connection操作以后可以变成多个region,那么此时'distance_center'、'distance_contour'模式的筛选结果较难预料,要尽量避免这种情况。例如下面这样的Pattern:

distance_dilate:和distance_contour极为类似,当Pattern的膨胀量为Min~Max中的某个值时,Regions中刚好(注意“刚好”这两个字)能与Pattern有交集的region被选出。在计算方法上与'distance_contour'模式有极细微的区别,更大的区别是——如果Pattern中的区域不连续,也不影响'distance_dilate'模式的这一特性。
但是'distance_dilate'模式有个非常严重的缺点,当Regions中的元素非常多(例如超过50个)的时候,该模式下整个算子执行时间非常长,经常超过1秒钟。此时如果用'distance_contour'模式设法实现类似的功能,效率远高于'distance_dilate'模式。
select_shape_proto(Regions, Pattern, SelectedRegions, 'fits', Min, Max )
fits:判断Regions中每个region通过平移(shift,不能旋转)能不能完全盖住(fit)Pattern,如果能,则将这些region筛选出来;这里参数'Min'、'Max'无效。

(图中三个大的矩形和红色圆平移以后都能完全盖住蓝色的小矩形Pattern,因此被选出)
select_shape_proto(Regions, Pattern, SelectedRegions, 'overlaps_rel', 5 ,6)
overlaps_rel:根据Pattern和Regions中每个region的重叠部分进行筛选,overlaps_rel定义为重叠部分面积和当前region面积的比值,用于筛选的重叠比例由参数'Min'、'Max'控制,有效取值为0-100。

(图中红色矩形和大圆('margin形式表示')的重叠部分占红色矩形的比例为5.76875%,刚好位于Min和Max之间,因此被选出)
overlaps_abs:跟overlaps_rel类似,不过由比值(相对值)改成了重叠的绝对值,即重叠的像素面积。
covers:看了半天、试了半天,没搞懂这个模式的规律,以后再说。
使用经验:就我个人来说,我觉得这7种特征模式中'distance_center'、'distance_contour'、'distance_dilate'、'overlaps_rel'最有用。
select_shape_proto算子的几种特征模式含义解析的更多相关文章
- FTP协议的两种工作模式简单解析!
转载自百度百科:http://baike.baidu.com/link?url=KaBZmDM4IZ2v56MyoOnpjqKr0gADv_BRbgjlscYdyvh3-zDwINOHNPSi9Jlp ...
- LVS负载均衡(LVS简介、三种工作模式、十种调度算法)
一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现 ...
- LVS负载均衡软件使用及(LVS简介、三种工作模式、十种调度算法)
一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现了基于IP的数据请求负载均衡调度方案, ...
- LVS 负载均衡 三种工作模式 十种调度算法
原文链接:https://blog.csdn.net/weixin_40470303/article/details/80541639 一.LVS简介 LVS(Linux Virtual Server ...
- JS面向对象函数的四种调用模式
函数的四种调用模式 概念 在 js 中,无论是函数, 还是方法, 还是事件, 还是构造器,...这些东西的本质都是函数 函数, 方法, 事件, 构造器,...只是所处的位置不同 这四种模式分别是 函数 ...
- 云计算的三种服务模式:SaaS/PaaS/IaaS
转载http://blog.chinaunix.net/uid-22414998-id-3141499.html 定义 云计算主要分为三种服务模式,而且这个三层的分法重要是从用户体验的角度出发的: S ...
- 深度分析Linux下双网卡绑定七种模式 多网卡的7种bond模式原理
http://blog.csdn.net/abc_ii/article/details/9991845多网卡的7种bond模式原理 Linux网卡绑定mode共有七种(~) bond0.bond1.b ...
- 多网卡的7种bond模式原理
多网卡的7种bond模式原理 Linux 多网卡绑定 网卡绑定mode共有七种(0~6) bond0.bond1.bond2.bond3.bond4.bond5.bond6 常用的有三种 mode=0 ...
- Linux 多网卡的7种bond模式原理
Linux 多网卡绑定 网卡绑定mode共有七种(0~6) bond0.bond1.bond2.bond3.bond4.bond5.bond6 常用的有三种 mode=0:平衡负载模式,有自动备援,但 ...
随机推荐
- Machine Learning 方向读博的一些重要期刊及会议 && 读博第一次组会时博导的交代
读博从报道那天算起到现在已经3个多月了,这段时间以来和博导总共见过两次面,寥寥数语的见面要我对剩下的几年读书生活没有了太多的期盼,有些事情一直想去做却总是打不起来精神,最后挣扎一下还是决定把和博导开学 ...
- Python windows ping
# -*- coding: utf-8 -*- import os # 参考文档: # Ping to a specific IP address using python [duplicate] # ...
- ehci ohci 驱动逻辑
1. EHCI ehci_platform_probe: platform_get_irq usb_hcd_request_irqs usb_hcd_irq 使用的是ehci的irq hcd-> ...
- Javascript模块化编程require.js的用法
JS模块化工具requirejs教程(一):初识requirejs http://www.runoob.com/w3cnote/requirejs-tutorial-1.html JS模块化工具req ...
- Asp.net MVC Comet 推送
一.简介 在Asp.net MVC实现的Comet推送的原理很简单. 服务器端:接收到服务器发送的AJAX请求,服务器端并不返回,而是将其Hold住,待到有东西要通知客户端时,才将这个请求返回. 客户 ...
- List of LTE networks
https://en.wikipedia.org/wiki/List_of_LTE_networks
- 黄聪:如何配置Emeditor实现代码智能识别自动完成功能
设置方法如图所示: 效果如下图所示:
- ThinkJava-标准IO
1 从标准输入中读取 按照标准1/0模型, Java提供了System.in.System.out和System.err.在整本书里,我们已经 看到了怎样用System.out将数据写出到标准输出,其 ...
- Hive 查看日志
日志记录了程序运行的过程,是一种查找问题的利器. Hive中的日志分为两种1. 系统日志,记录了hive的运行情况,错误状况.2. Job 日志,记录了Hive 中job的执行的历史过程. 系统日志存 ...
- canvas变换
canvas变换 方法 save() 保存canvas状态 restore() 回复canvas保存的状态 translate(x, y) 移动canvas位置 rotate(radians) 顺时针 ...