Opencvchina网站:把证件照蓝色背景转为白色
生活随笔
收集整理的這篇文章主要介紹了
Opencvchina网站:把证件照蓝色背景转为白色
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
這是在Opencvchina網(wǎng)站上每周一練題目,第十五期要求把藍(lán)色背景轉(zhuǎn)為白色背景,原圖下所示:
代碼如下所示:
// 證件照背景變色.cpp : 定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。 // /*========================================================================= 名稱:圖片背景由藍(lán)色轉(zhuǎn)為白色 時(shí)間:2013.08 說(shuō)明:Opencvchina網(wǎng)站15期的每周一練題目 =========================================================================*/#include "stdafx.h" #include "cv.h" #include "highgui.h" #include "cxcore.h"int _tmain(int argc, _TCHAR* argv[]) {//----------聲明圖片指針與加載----------//IplImage *src, *dst;src = cvLoadImage("./1.jpg"); //加載待處理圖片if(!src)return -1;dst = cvCreateImage(cvGetSize(src), src->depth, src->nChannels);//初始化dstcvZero(dst); //把dst像素清零//---------設(shè)置ROI區(qū)域,膨脹來(lái)去除標(biāo)志---------//cvCopy(src, dst);cvSetImageROI(dst, cvRect(280, 340, 310, 40));cvDilate(dst, dst, NULL, 3);cvResetImageROI(dst);//----------調(diào)用填充函數(shù),把藍(lán)色背景轉(zhuǎn)為白色---------//cvFloodFill(dst, cvPoint(0,0), CV_RGB(255, 255, 255),cvScalarAll(10),cvScalarAll(10),NULL,4,NULL);//----------進(jìn)一步膨脹標(biāo)志地方----------//cvSetImageROI(dst, cvRect(380, 340, 310, 40));cvDilate(dst, dst, NULL, 3);cvResetImageROI(dst);//---------創(chuàng)建顯示窗口與圖片顯示------------//cvNamedWindow("src");cvNamedWindow("dst");cvMoveWindow("src", 60, 60);cvMoveWindow("dst", 660, 60);cvShowImage("src", src);cvShowImage("dst", dst);cvSaveImage("3.jpg", dst);cvWaitKey();//----------銷毀所有窗口與釋放內(nèi)存------------//cvDestroyAllWindows();cvReleaseImage(&src);cvReleaseImage(&dst);return 0; }
處理好圖像如下所示:
如果有侵權(quán)麻煩留言,我刪除圖像,臉上是我劃掉的,與代碼無(wú)關(guān)
總結(jié)
以上是生活随笔為你收集整理的Opencvchina网站:把证件照蓝色背景转为白色的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux开机自动执行脚本、运行程序
- 下一篇: 假币问题POJ2692