当前位置: 首页 > news >正文

备案号链接工信部网站网站模板切换

备案号链接工信部网站,网站模板切换,寻找网站建设,wordpress导入演示卡主操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 查找一个轮廓的凸性缺陷。 下图显示了一个手部轮廓的凸性缺陷: convexityDefects 是 OpenCV 库中的一个函数,用于检测轮…
  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

查找一个轮廓的凸性缺陷。
下图显示了一个手部轮廓的凸性缺陷:
在这里插入图片描述
convexityDefects 是 OpenCV 库中的一个函数,用于检测轮廓相对于其凸包的凹陷缺陷。这个函数可以帮助识别轮廓中的凹进去的部分,通常被用来分析手部或其他物体的形状特征。

函数原型


void cv::convexityDefects
(InputArray 	contour,InputArray 	convexhull,OutputArray 	convexityDefects 
)		

参数

  • 参数contour 输入的轮廓。
  • 参数convexhull 使用 convexHull 获得的凸包,应包含构成凸包的轮廓点的索引。
  • 参数convexityDefects 凸性缺陷的输出向量。在 C++ 和新的 Python/Java 接口中,每个凸性缺陷表示为一个四元素整数向量(即 Vec4i):(start_index, end_index, farthest_pt_index, fixpt_depth),其中索引是原始轮廓中凸性缺陷起始点、终点和最远点的 0 基础索引,而 fixpt_depth 是最远轮廓点与凸包之间距离的定点近似值(带有 8 位小数部分)。也就是说,要获得深度的浮点数值,需要将 fixpt_depth 除以 256.0。

代码示例


#include <iostream>
#include <opencv2/opencv.hpp>using namespace std;
using namespace cv;int main()
{// 加载一张图像Mat img = imread( "/media/dingxin/data/study/OpenCV/sources/images/hand2.png", IMREAD_GRAYSCALE );if ( img.empty() ){cerr << "Error: Image not found." << endl;return -1;}// 二值化处理Mat binImg;threshold( img, binImg, 48, 255, THRESH_BINARY_INV );//imshow( "er zhi", binImg );// 寻找轮廓vector< vector< Point > > contours;findContours( binImg, contours, RETR_EXTERNAL, CHAIN_APPROX_SIMPLE );// 假设我们只处理第一个最大的轮廓vector< Point > contour = contours[ 0 ];// 计算凸包vector< int > hull;convexHull( contour, hull );// 计算凹陷缺陷vector< Vec4i > defects;convexityDefects( contour, hull, defects );// 在原图上绘制凸包和凹陷缺陷Mat drawing = Mat::zeros( img.size(), CV_8UC3 );drawContours( drawing, contours, 0, Scalar( 255, 0, 0 ), 2 );  // 绘制轮廓//imshow( "Convexity ", drawing );// 绘制凹陷缺陷for ( size_t i = 0; i < defects.size(); i++ ){Vec4i defect   = defects[ i ];Point start    = contour[ defect[ 0 ] ];Point end      = contour[ defect[ 1 ] ];Point farthest = contour[ defect[ 2 ] ];line( drawing, start, end, Scalar( 0, 255, 0 ), 1 );      // 绘制凹陷缺陷的边缘circle( drawing, farthest, 5, Scalar( 0, 0, 255 ), -1 );  // 绘制凹陷缺陷的最远点}// 显示结果imshow( "Original image", img );imshow( "Convexity Defects", drawing );waitKey( 0 );return 0;
}

运行结果

在这里插入图片描述

http://www.yayakq.cn/news/749221/

相关文章:

  • 建设环评备案登记网站wordpress手机悬浮
  • 网站域名实名认证通知旅游网站有哪些?
  • 装修网站cms网站建设需要些什么软件
  • 做门户网站用什么程序网站优化计划书
  • 哪一个网站是专门做兼职的国外手机设计网站
  • 搭建个网站需要多少钱网站设计建设公司需要什么资质
  • 徐州网站推广公司wordpress必备文件组合
  • 贵州省建设厅官方网站考证wordpress 子夜面
  • 昆明云南微网站制作女和男做的视频网站
  • 让别人做网站要注意什么6学网站开发哪里好
  • 青岛东橙网站建设怎么设置网站的关键字
  • app网站公司名称宿州商务网站建设
  • 网站构成电商网站首页设计规范
  • 培训餐饮网站建设织梦后台怎么做导航栏的网站首页
  • wex5做视频网站收录优美图片手机版
  • 网站建设与网络设计课程谷德设计网官网首页
  • 网站建设规定桂林建站
  • 用二级域名做网站对seo建设京东类的网站需要什么流程图
  • 网站的网站地图怎么做长沙工程建设管理中心网站
  • 成都网站设计开发做得好海口企业免费建站
  • 建设网站工作内容企业文化形象墙设计
  • php做直播网站筑巢网站建设怎么样
  • 建设网站cms公司的网站如何建设
  • 可以用wpf做网站吗工业做网站
  • 福建祥盛建设有限公司网站如何做网站联盟营销
  • 贵州专业网站建设整人网站建设
  • 大连微网站开发答题卡在线制作网站
  • 榆林做网站的公司电话网站优化系统
  • 网站托管怎么做等保六安招聘网最新招聘
  • 关于建立网站的申请桐庐县网站建设