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

Wordpress网站开发收费linuxvps建站教程

Wordpress网站开发收费,linuxvps建站教程,什么叫页面价格,seo怎么发布外链OpenCV学习笔记#xff08;八#xff09;#xff1a;形态学morpholgy(2)#xff1a;开、闭运算#xff0c;形态学梯度、顶帽、黑帽#xff1a;morphologyEx() 数学形态学#xff08;Mathematical morphology#xff09; 是一门建立在格论和拓扑学基础之上的图像分析学…OpenCV学习笔记八形态学morpholgy(2)开、闭运算形态学梯度、顶帽、黑帽morphologyEx() 数学形态学Mathematical morphology 是一门建立在格论和拓扑学基础之上的图像分析学科是数学形态学图像处理的基本理论。其基本的运算包括二值腐蚀和膨胀、二值开闭运算、骨架抽取、极限腐蚀、击中击不中变换、形态学梯度、Top-hat变换、颗粒分析、流域变换、灰值腐蚀和膨胀、灰值开闭运算、灰值形态学梯度等。 一、开运算Opening Operation 其实就是先腐蚀后膨胀的过程 开运算可以用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。 二、闭运算(Closing Operation) 先膨胀后腐蚀的过程 闭运算能够排除小型黑洞(黑色区域)可以将团块的边缘突出出来。 三、形态学梯度Morphological Gradient 膨胀图与腐蚀图之差 对二值图像进行这一操作可以将团块blob的边缘突出出来。我们可以用形态学梯度来保留物体的边缘轮廓。 四、顶帽Top Hat 顶帽运算Top Hat又常常被译为”礼帽“运算源图与“开运算图“之差 因为开运算带来的结果是放大了裂缝或者局部低亮度的区域因此从原图中减去开运算后的图得到的效果图突出了比原图轮廓周围的区域更明亮的区域所以顶帽运算往往用来分离比邻近点亮一些的斑块。当一幅图像具有大幅的背景的时候而微小物品比较有规律的情况下可以使用顶帽运算进行背景提取。 五、黑帽Black Hat 为”闭运算“的结果图与原图像之差 黑帽运算后的效果图突出了比原图轮廓周围的区域更暗的区域黑帽运算用来分离比邻近点暗一些的斑块。 六、morphologyEx函数详解: C: void morphologyEx( InputArray src, OutputArray dst, int op, InputArraykernel, PointanchorPoint(-1,-1), intiterations1, intborderTypeBORDER_CONSTANT, constScalar borderValuemorphologyDefaultBorderValue() );第一个参数InputArray类型的src输入图像即源图像(CV_8U, CV_16U,CV_16S, CV_32F 或CV_64F)。 第二个参数OutputArray类型的dst即目标图像。 第三个参数int类型的op表示形态学运算的类型 MORPH_OPEN – 开运算Opening operation MORPH_CLOSE – 闭运算Closing operation MORPH_GRADIENT -形态学梯度Morphological gradient MORPH_TOPHAT - “顶帽”“Top hat” MORPH_BLACKHAT - “黑帽”“Black hat“第五个参数Point类型的anchor锚的位置其有默认值-1-1表示锚位于中心。 第六个参数int类型的iterations迭代使用函数的次数默认值为1。 第七个参数int类型的borderType用于推断图像外部像素的某种边界模式。注意它有默认值BORDER_ CONSTANT。 第八个参数const Scalar类型的borderValue当边界为常数时的边界值有默认值morphologyDefaultBorderValue()一般我们不用去管他。需要用到它时可以看官方文档中的createMorphologyFilter()函数得到更详细的解释。 getStructuringElement函数相关的调用示例代码如下 //结构元素(内核矩阵)的尺寸 int g_nStructElementSize 3;//获取自定义核 Mat element getStructuringElement(MORPH_RECT,Size(2*g_nStructElementSize1,2*g_nStructElementSize1),Point(g_nStructElementSize, g_nStructElementSize ));第一个参数表示内核的形状我们可以选择如下三种形状之一 矩形: MORPH_RECT 交叉形: MORPH_CROSS 椭圆形: MORPH_ELLIPSE第二和第三个参数分别是内核的尺寸以及锚点的位置,对于锚点的位置有默认值Point(-1,-1)表示锚点位于中心 六、示例代码: #include opencv2/opencv.hppusing namespace cv; using namespace std;Mat g_srcImage, g_dstImage; //原始图和效果图 int g_nElementShape MORPH_RECT; //元素结构的形状//变量接收的TrackBar位置参数 int g_nMaxIterationNum 10; // 最大方向值 int g_nOpenCloseNum 0; // 开闭/运算内核值 int g_nTopBlackHatNum 0; // 顶帽/黑帽内核值int main(int argc, char *argv[]) {QCoreApplication a(argc, argv);// 1、载入原图g_srcImage imread(F:/C/2. OPENCV 3.1.0/TEST/综合.png);if( !g_srcImage.data ) { printf(Ohno读取srcImage错误~ \n); return false; }// 2、显示原始图namedWindow(【原始图】);imshow(【原始图】, g_srcImage);// 3、创建窗口namedWindow(【开运算/闭运算】,1);namedWindow(【顶帽/黑帽】,1);// 4、参数赋值g_nOpenCloseNum9;g_nTopBlackHatNum10;// 5、分别为二个窗口创建滚动条createTrackbar(迭代值, 【开运算/闭运算】,g_nOpenCloseNum,g_nMaxIterationNum*21,on_OpenClose);createTrackbar(迭代值, 【顶帽/黑帽】,g_nTopBlackHatNum,g_nMaxIterationNum*21,on_TopBlackHat);// 6、轮询获取按键信息while(1){//执行回调函数on_OpenClose(g_nOpenCloseNum, 0);on_TopBlackHat(g_nTopBlackHatNum,0);//获取按键int c waitKey(0);//按下键盘按键Q或者ESC程序退出if( (char)c q||(char)c 27 )break;//按下键盘按键1使用椭圆(Elliptic)结构元素结构元素MORPH_ELLIPSEif( (char)c 49 )//键盘按键1的ASII码为49g_nElementShape MORPH_ELLIPSE;//按下键盘按键2使用矩形(Rectangle)结构元素MORPH_RECTelse if( (char)c 50 )//键盘按键2的ASII码为50g_nElementShape MORPH_RECT;//按下键盘按键3使用十字形(Cross-shaped)结构元素MORPH_CROSSelse if( (char)c 51 )//键盘按键3的ASII码为51g_nElementShape MORPH_CROSS;//按下键盘按键space在矩形、椭圆、十字形结构元素中循环else if( (char)c )g_nElementShape (g_nElementShape 1) % 3;}return a.exec(); }1开运算/闭运算 回调函数 static void on_OpenClose(int, void*) {//偏移量的定义int offset g_nOpenCloseNum - g_nMaxIterationNum; //偏移量int Absolute_offset offset 0 ? offset : -offset;//偏移量绝对值//自定义核Mat element getStructuringElement(g_nElementShape, Size(Absolute_offset*21, Absolute_offset*21), Point(Absolute_offset, Absolute_offset) );//进行操作if( offset 0 )// 偏移量小于0 时开运算morphologyEx(g_srcImage, g_dstImage, MORPH_OPEN, element);else if (offset 0)g_srcImage.copyTo(g_dstImage);else// 偏移量大于0 时闭运算morphologyEx(g_srcImage, g_dstImage, MORPH_CLOSE, element);//显示图像imshow(【开运算/闭运算】,g_dstImage); }2顶帽运算/黑帽运算 回调函数 static void on_TopBlackHat(int, void*) {//偏移量的定义int offset g_nTopBlackHatNum - g_nMaxIterationNum;//偏移量int Absolute_offset offset 0 ? offset : -offset;//偏移量绝对值//自定义核Mat element getStructuringElement(g_nElementShape, Size(Absolute_offset*21, Absolute_offset*21), Point(-1, -1) );//进行操作if( offset 0 )morphologyEx(g_srcImage, g_dstImage, MORPH_TOPHAT , element);else if (offset 0)g_srcImage.copyTo(g_dstImage);elsemorphologyEx(g_srcImage, g_dstImage, MORPH_BLACKHAT, element);//显示图像imshow(【顶帽/黑帽】,g_dstImage); }结果 MORPH_ELLIPSE MORPH_RECT MORPH_CROSS
http://www.sadfv.cn/news/25770/

相关文章:

  • 漳州专业网站建设用手机制作沙雕动画软件
  • 2008iis7建立网站做网站切图
  • dedecms织梦和wordpress网站关键词优化seo关键词之间最好用逗号
  • 整个网站的关键词淄博网站建设乐达
  • 门户网站建设原则医院网站建设标书
  • 站长之家whois软文推广的100个范例
  • 网站板块怎么做餐饮小程序开发
  • 网站开发 模板 c企业解决方案ppt
  • 手机网站排名怎么做重庆网站推广的网站
  • 微商做网站临西企业做网站
  • 国外网站国内备案网页制作价格表
  • 深圳教育平台网站建设中国优秀网页设计
  • 做外快的网站网站后台建设编辑器
  • 建立网站站点的过程中不正确的是商家推广平台有哪些
  • 专业定制网站建设代理凡客陈年现状
  • 广州网站运营十年乐云seo广西壮族自治区住房和建设厅网站
  • 苏州吴江城乡和住房建设局网站同步手机wordpress
  • 横沥做网站的电话郑州建设网站定制
  • 官方网站建设账务处理网站建设的基本知识
  • 哪里有做网站的素材手机网站如何做才能兼容性各种手机
  • jsp做网站用到的软件自治区住房和城乡建设厅官网
  • 网站建设的三个步骤是什么广州网站推广服务商
  • 做电影分享网站违法吗域名注册商网站
  • 抽奖网站怎么做网站建站论坛
  • 网站开发需求分析实例网页和网站区别
  • 西安网站建设招骋商丘做网站的电话
  • 网站建设哪个空间比较好珠海集团网站建设报价
  • 网站实名认证 备案医疗网站如何做优化
  • 织梦网站栏目是做什么用的有哪些网站是免费学做网页的
  • 58网站建设 网站制作阿里做外贸的网站