日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

图像轮廓的提取和绘制

發布時間:2023/11/27 生活经验 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图像轮廓的提取和绘制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自:http://blog.csdn.net/gnuhpc/archive/2009/06/18/4278105.aspx

?

<>var ultimaFecha = ' '; <>document.write(ultimaFecha); #include "highgui.h"
#include "cv.h"
#include <iostream>
#include <iomanip>

using namespace std;

int main(void)
{
??? int i=0;
??? int mode = CV_RETR_CCOMP;//設置提取輪廓模式
??? int contours_num=0;//提取輪廓的數目
??? CvScalar external_color;//繪制輪廓線的顏色
??? CvScalar hole_color;
??? CvMemStorage *storage = cvCreateMemStorage(0);
??? CvSeq *contours =0;//存儲提取的輪廓圖像

??? IplImage *pImg = NULL;
??? IplImage *pContourImg = NULL;//顯示提取的輪廓圖像
??? IplImage *src=/blog.armyourlife.info/cvLoadImage("1.png",1);

??? pImg = cvCreateImage(cvGetSize(src),src->depth,1);
??? pContourImg =cvCreateImage(cvGetSize(pImg),IPL_DEPTH_8U,3);
??? cvCvtColor(src,pImg,CV_BGR2GRAY);//將讀取的圖像轉化為灰度圖像
??? cvNamedWindow("src",1);
??? cvNamedWindow("contour",1);
??? cvShowImage("src",src);//顯示原圖
??? cvThreshold(pImg,pImg,200,255,CV_THRESH_BINARY);//二值化
??? mode = CV_RETR_LIST;
??? contours_num=cvFindContours(pImg,storage,&contours,sizeof(CvContour),mode,CV_CHAIN_APPROX_NONE);
??? cout<<contours_num<<" "<<endl;//打印找到的輪廓的數目
??? for (;contours!=0;contours=contours->h_next)
??? {
??????? hole_color=CV_RGB(rand()&255,rand()&255,rand()&255);
??????? external_color = CV_RGB(rand()&255,rand()&255,rand()&255);
??????? cvDrawContours(pContourImg,contours,external_color,hole_color,1,2,8);
??? }

??? cvShowImage("contour",pContourImg);
??? cvWaitKey(0);
??? cvReleaseImage(&src);
??? cvReleaseImage(&pImg);
??? cvReleaseImage(&pContourImg);
??? cvReleaseMemStorage(&storage);
}

?

總結

以上是生活随笔為你收集整理的图像轮廓的提取和绘制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

歡迎分享!

轉載請說明來源于"生活随笔",并保留原作者的名字。

本文地址:图像轮廓的提取和绘制