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

做网站需注意什么百度的竞价排名是哪种方式

做网站需注意什么,百度的竞价排名是哪种方式,银川做网站的公司,wordpress添加备案号膨胀和腐蚀运算的问题#xff1a; 边缘形状发生了变化#xff0c;膨胀发生了扩张#xff0c;腐蚀发生了收缩 目标物体变形#xff0c;对识别时的特征提取会造成影响 解决方法#xff1a; 开操作: B对A的开操作就是先B对A腐蚀#xff0c;紧接着用B对结果进行膨胀 先腐…膨胀和腐蚀运算的问题 边缘形状发生了变化膨胀发生了扩张腐蚀发生了收缩 目标物体变形对识别时的特征提取会造成影响 解决方法 开操作: B对A的开操作就是先B对A腐蚀紧接着用B对结果进行膨胀 先腐蚀再膨胀的结果并不是恢复原状而是会消除黏连部分同时不影响其他部分的形状. 平滑物体的轮廓断开较窄的狭颈并消除较细的突出。 效果 闭操作: B对A的闭操作就是先B对A膨胀紧接着用B对结果进行腐蚀 先膨胀再腐蚀的结果并不是恢复原状而是填充小的裂缝、孔隙且不影响形状. 平滑物体的轮廓弥合较窄的间断和细小的沟壑消除小的孔洞填充轮廓中的断痕。 效果 更加详细的过程如下 除了开闭运算黑帽顶帽运算也是形态学操作比较重要的操作。 顶帽变换原图-灰度开运算(灰度腐蚀灰度膨胀) 效果 1、保留比结构元素小的部分 2、保留比周围环境亮的像素 底帽变换灰度闭运算灰度膨胀灰度腐蚀-原图 效果 1、保留比结构元素小的部分 2、保留比周围环境暗的像素 解释 顶帽处理使背景变得趋于一致了前景和背景的对比度加深了 这是因为在顶帽处理中当结构元素比前景目标物的大小 大的时候腐蚀的步骤会选择周围比较暗的值代替比较亮的值 所以背景变暗了同时前景被去掉了。再用原图和结果相减就可以把背景去掉把开运算中去掉的前景给保留下来 代码实现 #include opencv2/opencv.hpp #include iostream #include windows.h #include stdio.husing namespace cv; using namespace std;//*--------------------------【练习】形态学操作morphology大练习------------------------------------*/ //请调整滚动条观察图像效果 //按键操作说明 : //键盘按键【空格SPACE】- 在矩形、椭圆、十字形结构元素中循环 //键盘按键【1】- 使用椭圆结构元素 //键盘按键【2】- 使用矩形结构元素 //键盘按键【3】- 使用十字形结构元素 Mat g_secImage, g_dstImage; //原图和效果图 int g_nElementShape MORPH_RECT; //初始化元素结构形状//变量接受的Trackbar值 int g_nMaxIterationMun 10; int g_nOpenCloseNum 0; int g_nErodeDilateNum 0; int g_nTopBlackHatNum 0;//*--------------------------【全局函数声明】-----------------------------------*/ static void on_OpenClose(int, void*); //回调函数 static void on_ErodeDilate(int, void*); //回调函数 static void on_TopBlakHat(int, void*); //回调函数 void ShowHelpText1(); void ShowHelpText2(); int main() {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN); //字体为绿色//载入原图g_secImage imread(D:\\opencv_picture_test\\形态学操作\\黑白.jpg);//判断图像是否加载成功if (g_secImage.empty()){cout 图像加载失败! endl;return -1;}elsecout 图像加载成功! endl endl;//显示原图像namedWindow(原图像, WINDOW_NORMAL); //定义窗口显示属性imshow(原图像, g_secImage);//创建三个窗口namedWindow(【开运算/闭运算】, WINDOW_NORMAL); namedWindow(【腐蚀/膨胀】, WINDOW_NORMAL);namedWindow(【顶帽/黑帽】, WINDOW_NORMAL);//参数赋值g_nOpenCloseNum 9;g_nErodeDilateNum 9;g_nTopBlackHatNum 2;//分别为三个窗口建立滑动条createTrackbar(迭代值, 【开运算/闭运算】, g_nOpenCloseNum, g_nMaxIterationMun*21,on_OpenClose);createTrackbar(迭代值, 【腐蚀/膨胀】, g_nErodeDilateNum, g_nMaxIterationMun * 2 1, on_ErodeDilate);createTrackbar(迭代值, 【顶帽/黑帽】, g_nTopBlackHatNum, g_nMaxIterationMun * 2 1, on_TopBlakHat);//show帮助信息ShowHelpText1();//轮询获取按键信息while (1){int c;//执行回调函数on_OpenClose(g_nOpenCloseNum,0);on_ErodeDilate(g_nErodeDilateNum,0);on_TopBlakHat(g_nTopBlackHatNum,0);//获取按键c waitKey(0);//按下按键ESC程序退出if ((char)c 27){break;}//按键1使用椭圆结构元素if ((char)c 49){g_nElementShape MORPH_ELLIPSE;}//按键2使用矩形结构元素else if ((char)c 50){g_nElementShape MORPH_RECT;}//按键3使用十字形结构元素else if ((char)c 51){g_nElementShape MORPH_CROSS;}//按键空格换一种结构元素else if ((char)c ){g_nElementShape (g_nElementShape1)%3;}} } //*--------------------------【回调函数】-----------------------------------*/static void on_OpenClose(int, void*) {//偏移量定义int offset g_nOpenCloseNum - g_nMaxIterationMun; //偏移量int Abs_offset offset 0 ? offset : -offset; //偏移量的绝对值//自定义核Mat element getStructuringElement(g_nElementShape,Size(Abs_offset*21, Abs_offset*21),Point(Abs_offset, Abs_offset)); //返回的是内核矩阵//进行操作if (offset 0){morphologyEx(g_secImage, g_dstImage, MORPH_OPEN, element);}else{morphologyEx(g_secImage, g_dstImage, MORPH_CLOSE, element);}//显示效果图imshow(【开运算/闭运算】, g_dstImage); } static void on_ErodeDilate(int, void*) {//偏移量定义int offset g_nErodeDilateNum - g_nMaxIterationMun; //偏移量int Abs_offset offset 0 ? offset : -offset; //偏移量的绝对值//自定义核Mat element getStructuringElement(g_nElementShape, Size(Abs_offset * 2 1, Abs_offset * 2 1), Point(Abs_offset, Abs_offset)); //返回的是内核矩阵//进行操作if (offset 0){morphologyEx(g_secImage, g_dstImage, MORPH_ERODE, element);}else{morphologyEx(g_secImage, g_dstImage, MORPH_DILATE, element);}//显示效果图imshow(【腐蚀/膨胀】, g_dstImage); } static void on_TopBlakHat(int, void*) {//偏移量定义int offset g_nTopBlackHatNum - g_nMaxIterationMun; //偏移量int Abs_offset offset 0 ? offset : -offset; //偏移量的绝对值//自定义核Mat element getStructuringElement(g_nElementShape, Size(Abs_offset * 2 1, Abs_offset * 2 1), Point(Abs_offset, Abs_offset)); //返回的是内核矩阵//进行操作if (offset 0){morphologyEx(g_secImage, g_dstImage, MORPH_TOPHAT, element);}else{morphologyEx(g_secImage, g_dstImage, MORPH_BLACKHAT, element);}//显示效果图imshow(【顶帽/黑帽】, g_dstImage); }//-----------------------------------【ShowHelpText( )函数】----------------------------- // 描述输出一些帮助信息//关于morphologyEx参数的问题//MORPH_BLACKHAT:黑帽运算//MORPH_TOPHAT:顶帽运算//MORPH_CLOSE:闭运算//MORPH_OPEN:开运算//MORPH_GRADIENT:形态学梯度//MORPH_ERODE:腐蚀运算//MORPH_DILATE:膨胀运算//关于getStructuringElement参数的问题//MORPH_RECT:矩形内核//MORPH_CROSS:交叉型内核//MORPH_ELLIPSE:椭圆形矩阵 //请调整滚动条观察图像效果 //按键操作说明 : //键盘按键【空格SPACE】- 在矩形、椭圆、十字形结构元素中循环 //键盘按键【1】- 使用椭圆结构元素 //键盘按键【2】- 使用矩形结构元素 //键盘按键【3】- 使用十字形结构元素 //---------------------------------------------------------------------------------------------- void ShowHelpText1() {//输出一些帮助信息printf(\n\n\n请调整滚动条观察图像效果\n);printf(\n\n\t按键操作说明\n);printf(\n\n\t键盘按键【空格SPACE】- 在矩形、椭圆、十字形结构元素中循环\n);printf(\n\n\t键盘按键【1】- 使用椭圆结构元素\n);printf(\n\n\t键盘按键【2】- 使用矩形结构元素\n);printf(\n\n\t键盘按键【3】- 使用十字形结构元素\n); } void ShowHelpText2() {//输出一些帮助信息printf(\n\n\n\morphologyEx 参数有以下几种类型\n);printf(\n\n\tMORPH_BLACKHAT:黑帽运算\n);printf(\n\n\tMORPH_TOPHAT:顶帽运算\n);printf(\n\n\tMORPH_CLOSE:闭运算\n);printf(\n\n\tMORPH_OPEN:开运算\n);printf(\n\n\t//MORPH_GRADIENT:形态学梯度\n);printf(\n\n\tMORPH_ERODE:腐蚀运算\n);printf(\n\n\tMORPH_DILATE:膨胀运算\n);printf(\n\n\n\getStructuringElement参数的问题\n);printf(\n\n\tMORPH_RECT:矩形内核\n);printf(\n\n\tMORPH_CROSS:交叉型内核\n);printf(\n\n\tMORPH_ELLIPSE:椭圆形矩阵\n); }代码实现效果 代码解释 调用opencv库函数morphologyEx通过调整参数就可以实现不同的形态学操作。 其中回调函数中要求得变量:偏移量当前迭代值和预置最大迭代值之差用它的正负来判断是进行哪种对偶操作。用它的绝对值来决定矩阵核的大小边长为奇数以及结构元素锚点的位置。 另外需要注意:十字形的element形状唯一依赖于锚点的位置。 而在其他情况下锚点只是影响形态学运算结果的偏移。 相关链接[https://www.cnblogs.com/zsb517/archive/2012/06/08/2541193.html(https://www.cnblogs.com/zsb517/archive/2012/06/08/2541193.html)
http://wiki.neutronadmin.com/news/283057/

相关文章:

  • 网站如何进行备案桂林网站建设哪家好
  • 做网站外包需要提供什么thymeleaf做网站 seo
  • 网站建设与维护蒋勇从电子商务网站建设用什么软件
  • 白云区网站建设深圳做响应式网站设计
  • 物流网站建设规划总结网贷代理平台
  • 佛山免费建站找哪家零基础怎么当程序员
  • 鄂州做网站多少钱重庆工商学校官网
  • 江苏哪家做网站排名比较好wordpress插件过多不好
  • 网站开发方向的工作深圳网站建设信科网络
  • 找人做网站要准备什么软件毕业设计代做网站多少钱
  • 别人盗用我的网站备案号怎么办柳州企业做网站
  • 企业备案网站可以做论坛吗做名片赞机器人电脑网站是多少钱
  • 企业网站建设需要做哪些工作品牌建设 宣传
  • 网站注册可以免费吗网站建设名片设计
  • 网站建设模板研究免费购物网站建设
  • 网站的分类有哪些内容全球最大设计网站
  • 手机网站推荐一个做seo推广做网站有用吗
  • 常州模板建站平台互联网营销是做什么
  • wordpress多站点搭建网站后台是怎样制作
  • 南宁有做网站的公司吗网站首页有哪些内容
  • 网站用户 分析电商平台推广方案
  • 教育主管部门建设的专题资源网站有哪些网站建设公司上线
  • 福田网站建设运营费用wordpress仿小米主题
  • 有关网站空间正确的说法是菏泽网站开发
  • 网站小视频怎么做代理wordpress4.8 php版本
  • .net 网站域账号自动验证码推广引流吸引人的标题
  • 深圳网站建设公司地址电商网站建设应用
  • 阳江招聘网站哪里最好找工作高负载php网站开发
  • 网站搜索排名高怎么做内蒙古城乡住房建设厅网站
  • 一条龙网站建设哪家专业地产平面网站