Just My Life & My Work

一般日常所見的影像都是RGB色彩,然而想要分析影像有時需要轉換色彩空間,如HSVYUV,原來OpenCV可以幫我做到!

程式碼非常簡短,呼叫cvCvtColor()即可轉換色彩空間,接著顯示轉換過後的影像。

/**
	Theme: Transform Color Space
	compiler: Dev C++ 4.9.9.2
	Date: 100/06/15
	Author: ShengWen
	Blog: https://cg2010studio.wordpress.com/
*/
#include <cv.h>
#include <highgui.h>
using namespace std;

int main(){
	IplImage * src= cvLoadImage("apple.jpg");

	//創造和src一樣的IplImage資料結構
	IplImage* hsv = cvCreateImage( cvGetSize(src), 8, 3 );
	IplImage* yuv = cvCreateImage( cvGetSize(src), 8, 3 );

	//輸入圖像轉換到HSV&YUV顏色空間
	cvCvtColor( src, hsv, CV_BGR2HSV );
	cvCvtColor( src, yuv, CV_BGR2YCrCb );
	cvNamedWindow( "Source-RGB", 1 );
	cvShowImage( "Source-RGB", src );
	cvNamedWindow( "Source-HSV", 1 );
	cvShowImage( "Source-HSV", hsv );
	cvNamedWindow( "Source-YUV", 1 );
	cvShowImage( "Source-YUV", yuv );

	cvWaitKey(0);
	return EXIT_SUCCESS;
}

apple
apple
apple

Comments on: "[OpenCV] 轉換色彩空間 (Transform Color Space)" (3)

  1. 謝謝版大分享,我正好急著需要><"

  2. […] 先前已寫過轉換色彩空間 (Transform Color Space),但那時沒有測試到Lab色彩空間。當前研究需要使用CIE L*a*b*色彩空間,於是再次實驗該程式碼,並有深入瞭解各色彩空間相互轉換的數學關係。 […]

隨意留個言吧:)~

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

標籤雲

%d 位部落客按了讚: