資源簡介
基于開源的opencv,實現一個圖像的灰度化和二值化。用于后續的圖像分割和識別
代碼片段和文件信息
//?RGB_Gray_Canny.cpp?:?Defines?the?entry?point?for?the?console?application.
#include?
#include?
#include?
#include?
using?namespace?std;
//聲明圖像IplImage指針
IplImage*?pSrcImg=NULL;
IplImage*?pGrayImg?=?NULL;
IplImage*?pCannyImg?=?NULL;
int?Thresh=50;
//滑動條響應函數
void?onTrackerSlid(int?thresh)
{
???cvCanny(pGrayImg?pCannyImg(float)thresh(float)thresh*3?3);
???cvShowImage(?“Canny?Image“?pCannyImg?);
}
int?main(?int?argc?char**?argv?)
{
????if(argc!=2)
????????argv[1]=“lena.jpg“;
????//載入圖像,強制轉化為Gray
????if((pSrcImg?=?cvLoadImage(?argv[1]1))?!=?0?)
????{
???????cout<<“Press?ESC?to?Quit“<
??????
???????//將顏色空間由RGB轉化為Gray
???????pGrayImg=cvCreateImage(cvGetSize(pSrcImg)81);
???????cvCvtColor(pSrcImgpGrayImgCV_RGB2GRAY);
??????
???????//canny邊緣檢測
???????pCannyImg?=?cvCreateImage(cvGetSize(pGrayImg)IPL_DEPTH_8U1);
???????//cvCanny(pGrayImg?pCannyImg?15050?3);
??????
???????//創建窗口
???????cvNamedWindow(?“Source?Image
評論
共有 條評論