使用opencv,在iOS环境下检测边角点,然后画出最大矩形
来源:互联网 发布:淘宝定金是什么意思 编辑:程序博客网 时间:2024/06/05 19:38
直接看代码,具体环境这里就不说了
// 检测边角点,然后画出最大矩形+ (UIImage*)opneCvdot:(UIImage*)image { cv::Mat src; UIImageToMat(image, src); cv::Mat grayMat; cv::cvtColor(src, grayMat, CV_BGR2GRAY); //根据参数找出角点 std::vector<cv::Point2f> corners; int maxCorners = 8; // // 最多检测到的角点数, 12 double qualityLevel = 0.05; // 阈值系数 0.01 double minDistance = 10; // 角点间的最小距离 10 int blockSize = 10; // 计算协方差矩阵时的窗口大小 10 bool useHarrisDetector = false; // 是否使用Harris角点检测,如不指定,则计算shi-tomasi角点, false double k = 0.04; // Harris角点检测需要的k值 0.04 cv::goodFeaturesToTrack(cv::InputArray(grayMat), cv::OutputArray(corners), maxCorners, qualityLevel, minDistance, cv::Mat(), blockSize, useHarrisDetector, k); //建立包围所有角点的矩形 cv::Rect rect = cv::boundingRect(cv::InputArray(corners)); //把每个检测到的角点在图中用圆形标识出来(方便调试) for( int i = 0; i < corners.size(); i++ ) { cv::circle(cv::InputOutputArray(grayMat), corners[i], 10, cv::Scalar(0,255,0), 2, 8, 0); } //把包围所有角点的矩形也画出来(方便调试) cv::rectangle(grayMat, rect, cv::Scalar(0,255,0), 5, 8, 0); return MatToUIImage(grayMat);}
下面是原图和效果图
原图:
效果图:
阅读全文
0 0
- 使用opencv,在iOS环境下检测边角点,然后画出最大矩形
- Largest Rectangle in Histogram(在柱形图中画出最大矩形)
- VC++使用DC画出点,线,矩形,椭圆
- ios--OpenCV--检测直线、圆、矩形
- OpenCV 矩形轮廓检测
- 【opencv】矩形检测
- OpenCV环境下用算法moravec、harris、Shi-Tomasi进行角点检测
- OpenCV 在 iOS 开发环境下的编译和配置
- 判断点是否在不规则矩形区域opencv demo
- opencv 检测直线、圆、矩形
- opencv 检测直线、圆、矩形
- OpenCV--- 检测直线、圆、矩形
- opencv --检测直线、圆、矩形
- opencv之矩形物体检测
- 利用opencv检测出矩形
- opencv检测直线,圆,矩形
- 把检测出的人脸用椭圆和矩形框画出
- 检测视频中的人脸,并画出矩形框
- UVa512 (implement)
- Oracle EBS 大量并发请求提交导致内存不足系统杀死Java JVM进程
- 关于bootloader
- key事件
- 在ubuntu16.04下安装clion
- 使用opencv,在iOS环境下检测边角点,然后画出最大矩形
- Python爬虫(二)使用urllib来爬点东西
- workqueue
- Struts2:action的三种开发方式
- Python BDD自动化测试框架初探
- Android学习笔记(二):Android中的五大布局
- ADT to the latest version
- 正则
- 主键和唯一索引的区别