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

六安网站推广苏州门户网站建设

六安网站推广,苏州门户网站建设,深圳手工外发加工网,一个域名建多个网站opencv中设置和获取感兴趣通道COI的函数如下#xff1a; SetImageCOI 设置感兴趣通道 void cvSetImageCOI( IplImage* image, int coi ); image 图像头. coi 感兴趣通道. 函数 cvSetImageCOI 基于给定的值设置感兴趣的通道。值 0 意味着所有的通道都被选定, 1 意味着第…opencv中设置和获取感兴趣通道COI的函数如下 SetImageCOI 设置感兴趣通道 void cvSetImageCOI( IplImage* image, int coi ); image 图像头.   coi 感兴趣通道. 函数 cvSetImageCOI 基于给定的值设置感兴趣的通道。值 0 意味着所有的通道都被选定, 1 意味着第一个通道被选定等等。如果 ROI 是 NULL 并且COI! 0, COI 被分配. GetImageCOI 返回感兴趣通道号 int cvGetImageCOI( const IplImage* image ); 函数cvGetImageCOI 返回图像的感兴趣通道当所有的通道都被选中返回值是0). 要注意的是大多数的opencv函数并不支持COI。 以下面代码为例 IplImage* imgCOI1cvLoadImage(lena.bmp); cvNamedWindow(mainWin, CV_WINDOW_AUTOSIZE);  cvSetImageCOI( imgCOI1 ,1 ); cvShowImage(mainWin, imgCOI1 );  以上代码读入一张图像,设置感兴趣区域为1即Blue通道然后显示出来。显示结果仍为彩色图像也就是说cvShowImage函数并不支持COI的设定。 对于上面问题的解决方案在opencv中 cvCopy 或cvSplit是支持感兴趣通道COI的 cvCopy(): cvCopy的原型是void cvCopy( const CvArr* src, CvArr* dst, const CvArr* maskNULL ); cvCopy函数将设置过感兴趣通道COI的源图像复制到匹配大小的目标图像中。只复制COI通道 注意在使用cvCopy这个函数之前你必须用cvCreateImage一类的函数先开一段内存。后面的cvSplit也是同样的要求 cvSplit(): 有些时候处理多通道图像时不是很方便在这种情况下可以利用cvSplit分别复制每个通道到多个单通道图像。函数原型void cvSplit(const CvArr* src,CvArr *dst0,CvArr *dst1, CvArr *dst2, CvArr *dst3)   如果需要cvSplit函数将复制src即源多通道图像的各个通道到图像dst0、dst1、dst2、dst3中。 目标图像必须与源图像在大小和数据类型上匹配当然也应该是单通道的图像。 如果源图像少于4个通道这种情况经常出现那么传递给cvSplit的不必要的目标参数可设置为NULL。 使用cvSplit函数前源图像不能设置过感兴趣通道COI否则会报错 下面是我总结的一个获取指定感兴趣通道COI的模板demo以备以后使用 #include iostream #include cv.h #include cxcore.h #include highgui.hint main() { // 导入一张彩色图像设置感兴趣通道一张灰度图像设置感兴趣区域IplImage* imgCOI1cvLoadImage(lena.bmp);IplImage* imgCOI2cvLoadImage(lena.bmp);/*OpenCV默认将读入的图像强制转换为一幅三通道彩色图像. 可以按这种方法修改读入方式:imgcvLoadImage(fileName,flag);flag: 0 将读入的图像强制转换为一幅三通道彩色图像0 将读入的图像强制转换为一幅单通道灰度图像0 读入的图像通道数与所读入的文件相同.*/if(!imgCOI1 || !imgCOI2)printf(Could not load image file: %s\n,lena.bmp);elseprintf(load image successful\n);cvNamedWindow(mainWin, CV_WINDOW_AUTOSIZE); cvMoveWindow(mainWin, 700, 100);cvShowImage(mainWin, imgCOI1 ); printf(have a look at the color image first\nwait any key...\n);cvWaitKey(0); //设置感兴趣通道为b 彩色图像的通道顺序是 BGR,所以参数指定1cvSetImageCOI( imgCOI1 ,1 );cvShowImage(mainWin, imgCOI1 ); printf(have a look at the first channelbof image.我们发现当使用cvShowImage时cvSetImageCOI对于感兴趣通道的设置并不起作用\nwait any key...\n);cvWaitKey(0); #pragma region cvCopy方法获取某一通道IplImage* BlueImagecvCreateImage(cvGetSize(imgCOI1),IPL_DEPTH_8U,1); cvSetImageCOI( imgCOI1 ,3 );cvCopy(imgCOI1,BlueImage);cvShowImage(mainWin, BlueImage ); printf(have a look at the third channelrof image which we use cvCopy to get.\n我们发现cvCopy是支持COI的我们抽出了红色对应的通道\nwait any key...\n);cvWaitKey(0); #pragma endregion#pragma region cvSplit方法获取各个通道IplImage* R_ImagecvCreateImage(cvGetSize(imgCOI2),IPL_DEPTH_8U,1); IplImage* G_ImagecvCreateImage(cvGetSize(imgCOI2),IPL_DEPTH_8U,1); IplImage* B_ImagecvCreateImage(cvGetSize(imgCOI2),IPL_DEPTH_8U,1); cvSplit(imgCOI2,B_Image,G_Image,R_Image,0); //接收各通道的子图像要注意与源图像的通道顺序匹配彩色即BGR。注意使用前不能设置COIprintf(have a look at the b,g,r channel in sequence which we use the cvSplit to get.\nwait any key three times...\n);cvShowImage(mainWin, B_Image ); cvWaitKey(0); cvShowImage(mainWin, G_Image ); cvWaitKey(0); cvShowImage(mainWin, R_Image ); cvWaitKey(0); #pragma endregioncvDestroyWindow(mainWin);cvReleaseImage(imgCOI1 );cvReleaseImage(imgCOI2);return 0; }
http://wiki.neutronadmin.com/news/130739/

相关文章:

  • 昔阳做网站公司微商营销技巧
  • 网站建设公司无锡做网站的收益来源
  • 网站制作框架php网站后台程序
  • 建设厅网站公司人员管理系统
  • 电子商务 网站模板设备技术支持东莞网站建设
  • 从电子商务网站f型眼球轨迹分析其网站布局百度入口网站
  • 免费承接网站建设html网站系统
  • 什么是分类信息网站营销装修公司网页设计模板
  • 做图文网站要什么配置的服务器百度问答兼职怎么做
  • 用什么网站做浏览器主页北京seo网络推广
  • 郑州高端做网站博客一号WordPress
  • 免费设计图网站南宁网页制作步骤
  • 建设工程合同模板seo兼职工资一般多少
  • 北京网站设计开发公司大学网站的设计方案
  • 网站图片翻页效果如何做移动网站建站视频教程
  • 朝阳区网站建设推广seo出口订单哪里找
  • 游民星空是谁做的网站简书 wordpress
  • 微信网站设计建网站需要什么要求
  • 百度搜索网站陕西住房和城乡建设厅网站电话
  • 湖北省城乡建设厅网站旅游高端网站建设
  • 常用的网站开发平台api哪个网站可以做店招店标轮播
  • 谷歌推广外贸建站创建网页用什么软件
  • 怎么建立博客网站营销网站运营的基本环节
  • 深圳网站设计公司哪家好企业公司信息网
  • 资阳网站优化风机网站怎么做
  • 网页游戏网站排名前10名网络科技扣钱是咋回事
  • 网站建设方案内容google浏览器网页版
  • 延边州网站建设中国优秀的企业网站
  • 阿里巴巴网站更新怎么做开发网站需要什么条件
  • 外贸单页网站案例建立电影网站教程