距离变换distanceTransform应用——细化字符轮廓
来源:互联网 发布:java设置文件权限 编辑:程序博客网 时间:2024/05/21 15:56
距离变换distanceTransform应用——细化字符轮廓
OpenCV中distanceTransform方法用于计算图像中每一个非零点距离离自己最近的零点的距离,distanceTransform的第二个Mat矩阵参数dst保存了每一个点与最近的零点的距离信息,图像上越亮的点,代表了离零点的距离越远。
#include "core/core.hpp" #include "imgproc/imgproc.hpp" #include "highgui/highgui.hpp" using namespace cv;int main(int argc, char *argv[]){ float maxValue = 0; //定义距离变换矩阵中的最大值 Mat image = imread("corner.tif"); Mat imageGray; cvtColor(image, imageGray, CV_RGB2GRAY); imageGray = ~imageGray; //取反 GaussianBlur(imageGray, imageGray, Size(5, 5), 2); //滤波 threshold(imageGray, imageGray, 20, 200, CV_THRESH_BINARY); //阈值 imshow("s", imageGray); Mat imageThin(imageGray.size(), CV_32FC1); //定义保存距离变换结果的Mat矩阵 distanceTransform(imageGray, imageThin, CV_DIST_L2, 3); //距离变换 Mat distShow; distShow = Mat::zeros(imageGray.size(), CV_8UC1); //定义细化后的字符轮廓 for (int i = 0; i<imageThin.rows; i++) { for (int j = 0; j<imageThin.cols; j++) { if (imageThin.at<float>(i, j)>maxValue) { maxValue = imageThin.at<float>(i, j); //获取距离变换的极大值 } } } for (int i = 0; i<imageThin.rows; i++) { for (int j = 0; j<imageThin.cols; j++) { if (imageThin.at<float>(i, j)>maxValue / 1.9) { distShow.at<uchar>(i, j) = 255; //符合距离大于最大值一定比例条件的点设为255 } } } imshow("Source Image", image); imshow("Thin Image", distShow); waitKey(); return 0;}
阅读全文
0 0
- 距离变换distanceTransform应用——细化字符轮廓
- Opencv距离变换distanceTransform应用——细化字符轮廓&&查找物体质心
- Opencv距离变换distanceTransform应用——细化字符轮廓&&查找物体质心
- Opencv距离变换distanceTransform应用——细化字符轮廓&&查找物体质心
- 距离变换distanceTransform应用——寻找图像的质心
- Opencv距离变换distanceTransform应用
- DistanceTransform(距离变换)
- 关于距离变换函数distanceTransform使用注意事项
- OpenCV距离变换函数:distanceTransform()介绍
- 基于distanceTransform-距离变换的手掌中心提取
- 基于distanceTransform-距离变换的手掌中心提取
- 用OpenCV的distanceTransform函数作图像的距离变换
- 图像识别中距离变换的原理及作用详解,并附用OpenCV中的distanceTransform实现距离变换的代码!
- OpenCV 基于距离变换的高精度轮廓匹配
- 图像距离变换与应用
- 细化—lhMorpThin
- 细化匹配—lhMorpThinFit
- 字符细化算法
- C++编程->基于CSerialPort类的串口通信测试
- hibernate QBC查询
- NYOJ Registration system
- 小白学tkinter(按钮Button)
- ZOJ 1654 Place the Robots (二分图最大匹配)
- 距离变换distanceTransform应用——细化字符轮廓
- spring-ioc 放开那个对象,让我(容器)来
- 啊哈,小白报道。
- Python数据分析之——数据可视化(折线图)
- Hdu 6060
- String数组转换拼接成SQL in条件字符串
- org.json使用指南
- Java常用类及其方法(九)----Math和Radom
- docker-compose配置