《数字图像处理与机器视觉——Visual C++与Matlab实现》P289公式8-7明显错误,但是后面的图是正确的。

《数字图像处理与机器视觉》 该书下载地址:http://pan.baidu.com/share/link?shareid=3551301329&uk=1610854122

详细知识可以看击中击不中,里面的图示跟书本中介绍的差不多。

另外书本中介绍:背景的宽度选择会影响最后的计算结果,以致最终的计算结果是空集。

 Mat input_image = src;Mat Kernel_S1 = imread("Kernel_3.bmp");//核-数字3cvtColor(Kernel_S1, Kernel_S1, CV_RGB2GRAY);int threhold = 180;threshold(input_image, input_image, threhold, 255, CV_THRESH_BINARY);threshold(Kernel_S1, Kernel_S1, threhold, 255, CV_THRESH_BINARY);imshow("二值化图像", input_image);Mat Blankimage = Mat::ones(Kernel_S1.rows, Kernel_S1.cols, CV_8UC1);Mat Kernel_S2 = Blankimage * 255 - Kernel_S1;imshow("核1", Kernel_S1);imshow("核2", Kernel_S2);Mat hit_result, hit_result1, hit_result2;/// 腐蚀erode(input_image, hit_result1, Kernel_S1, Point(-1,-1), 1, BORDER_DEFAULT, 0);imshow("hit_result1", hit_result1);Mat BigBlankimage = Mat::ones(input_image.rows, input_image.cols, CV_8UC1);input_image = BigBlankimage * 255 - input_image;imshow("反置图像", input_image);/// 腐蚀erode(input_image, hit_result2, Kernel_S2, Point(-1,-1), 1, BORDER_DEFAULT, 0);imshow("hit_result2", hit_result2);hit_result = hit_result1 & hit_result2;imshow("击中击不中", hit_result);/// 查找击中点,验证结果for (int i = 0; i <input_image.rows; ++i){uchar* data = hit_result.ptr<uchar>(i);for (int j = 0; j <input_image.cols; ++j){int temp = (int)data[j];if (temp)cout << "Find "<<temp;}}

Opencv实现击中击不中相关推荐

  1. OpenCV实现击中击不中变换和形态学细化

    1 击中击不中变换 1.1 HMT概述 形态学Hit-or-Miss是形状检测基本工具,只要结构元设置得当,就可以检测一些基本的形状图案,HMT变换只能作用于二值图像,结构元(核)元素值由0.1.-1 ...

  2. 【youcans 的 OpenCV 例程 200 篇】120. 击中-击不中变换

    欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列,持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列,持续更新中 [youcans 的 OpenCV 例程 2 ...

  3. 【youcans 的 OpenCV 例程200篇】121. 击中-击不中用于特征识别

    欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列,持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列,持续更新中 [youcans 的 OpenCV 例程 2 ...

  4. OpenCV图形图像击中击不中HITMISS变换处理基础知识

    ☞ ░ 前往老猿Python博客 https://blog.csdn.net/LaoYuanPython ░ 博文传送门: 老猿关于HTM变换的博文目录请见: https://blog.csdn.ne ...

  5. 形态学操作——击中击不中变换

    操作目的 HitMiss变换是形态检测的一个工具,通过定义形状模板可以在图像中获取同一形状物体的位置坐标. 算法讲解 1.用击中结构去腐蚀原始图像得到击中结果X(这个过程可以理解为在原始图像中寻找和击 ...

  6. 二值形态学之击中击不中变换

    定义 应用 物体识别 细化 击中击不中变换(Hit Miss Transform ,HMT),是通过同时探测图像的内部和外部,进而获取更多的内外标记,体现更多信息的一个方法.他的应用有很多,特别是在图 ...

  7. 图像形态学——击中击不中

    说明:关于击中击不中问题还有很多疑点,代码实现存在问题,日后遇到在详细解决. 击中击不中变换 击中击不中变换是形状检测的一个基本工具. 设X为目标图像,B为结构元素,且B由两个不相交的部分 B 1 B ...

  8. OpenCV-Python击中击不中HITMISS形态变换详解

    ☞ ░ 前往老猿Python博客 https://blog.csdn.net/LaoYuanPython ░ 一.引言 从学习完黑帽变换后的这段时间,都在学习和钻研基本形态变换的最后一个变换–击中击不 ...

  9. 详解图像形态学中的击中击不中变换操作(HMT),并提醒大家OpenCV4中的击中击不中变换操作是有问题的

    大家看这篇博文前可以先看一看下面这篇博文,下面这篇博文是这篇博文的基础: 详解图像形态学操作之图形的腐蚀和膨胀的概念和运算过程,并利用OpenCV的函数erode()和函数dilate()对图像进行腐 ...

最新文章

  1. 微信小程序使用npm 进行下载构建组价
  2. 佳能80d有人脸识别吗_国家地理2020年旅行者最推荐相机Top10,有你喜欢的吗?
  3. 2.5.1 MySQL数据库备份恢复基础讲解
  4. 20非常有用的Java程序片段(3)
  5. 边缘应用增长 800%,听听 Akamai 边缘部署的经验
  6. 腾讯视频下载安装链接_腾讯视频怎么上传视频
  7. css怎样设置li分栏,css怎么对文字分栏
  8. spring cloud的RefreshScope注解进行热部署
  9. 人工智能技术在银行客服中心的应用风险
  10. 荐书丨如何快速成为150万+小程序开发者中的一员
  11. 求出字符“2013-9-8”与“2013-10-1”相差的天数
  12. mongovue mysql_MongoDB 客户端 MongoVue
  13. 产品 观察体会微信界面心得(一)
  14. 谷歌/FOFA搜索引擎使用
  15. 浩辰3D与SolidWorks之间的异同
  16. 数据预处理之数据缩放
  17. 计算机操作系统-文件管理 知识点归纳
  18. 你所不了解的分布性系统之高可用篇
  19. 【MobaXterm教程】【公网】利用ipv6远程访问服务器
  20. Pytorch实现yolov3(train)训练代码详解(二)

热门文章

  1. 无法连接虚拟设备sata的原因
  2. JAVA 支付宝支付_史诗级简单教程(SpringBoot)
  3. Arduino ESP32将数据保存到NVS中
  4. 声表面波传感器的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  5. spring mvc 响应处理post请求和get请求 测试
  6. 0x50 动态规划(练习)20:干草堆(题解)
  7. Telegram皮肤
  8. 博客赚钱也疯狂--个人博客如何赚钱
  9. 微博创作者网址及申请条件,微博创作者收益
  10. java hypot_Java StrictMath hypot()方法与示例