C++ OpenCV cv::cvtColor()














































C++ OpenCV cv::cvtColor()



---------------------------------------------------------------------------------------------------------------
Description::
This is a C++ program to show the use of cvtColor funtion which is inbuilt in the opencv library. cvtColor takes 3 parametres. FIrst is mat object for image, second is mat object of another desired color and last parameter is keyname for conversion from one color to another color
Example:
1)COLOR_RGB2GRAY ::convert image from RGB to grey
2)COLOR_RGB2HSV::  convert image from RGB to HSV
3)COLOR_RGB2Lab ::  convert image from RGB to Lab
---------------------------------------------------------------------------------------------------------------
Program::

#include <opencv2/opencv.hpp>
using namespace cv;

int main( int argc, char** argv )
{
  char* ImageFile = argv[1];   //image file 
  Mat image;
  image = imread( ImageFile, IMREAD_COLOR ); //reading file
  if( argc != 2 || !image.data )
  {
    printf( " No image data \n " );
    return -1;
  }
  Mat gray_image;
  Mat HSV_image; //Mat object for storing data
  Mat Lab_image;
cvtColor( image, gray_image, COLOR_RGB2GRAY );             //convert image from RGB to grey
  imwrite( "/home/crmgogo/Pictures/greyImage.png", gray_image );
  namedWindow( ImageFile, WINDOW_AUTOSIZE );
  namedWindow( "Gray image", WINDOW_AUTOSIZE );
  imshow( ImageFile, image );
  imshow( "Gray image", gray_image );
cvtColor( image, HSV_image, COLOR_RGB2HSV );                //convert image from RGB to HSV
  imwrite( "/home/crmgogo/Pictures/HSVImage.png", HSV_image );
namedWindow( "HSV image", WINDOW_AUTOSIZE );
  imshow( "HSV image", HSV_image );
cvtColor( image, Lab_image, COLOR_RGB2Lab );                   //convert image from RGB to Lab
  imwrite( "/home/crmgogo/Pictures/LAbImage.png", Lab_image );
namedWindow( "Lab image", WINDOW_AUTOSIZE );
  imshow( "Lab image", Lab_image );
  waitKey(0);
  return 0;
}

---------------------------------------------------------------------------------------------------------------
Commands to run program on terminal::
g++ -ggdb `pkg-config --cflags filename` -o `basename filename .cpp` filename `pkg-config --libs opencv`

$ ./cvopen filename
---------------------------------------------------------------------------------------------------------------
Output::

More Articles of Shubham Loya:

Name Views Likes
C++ OpenCV cv::trace() 1383 1
C++ Armadillo :: Real and Imaginary part 1388 1
C++ OpenCV cv::perspectiveTransform() 4670 1
C++ Armadillo :: find_nonfinite 652 2
C++ Armadillo introduction and installation 535 1
C++ Armadillo :: Kron 1119 1
C++ Armadillo :: Accessing row and column and operations on it 1041 1
C++ Armadillo :: cond 421 2
C++ Armadillo :: pseudo-inverse 2480 1
C++ OpenCV cv::flip() 1526 1
C++ OpenCV cv::transpose() 6110 1
C++ Armadillo :: any 470 2
C++ Armadillo :: Max and Min of matrices 786 1
C++ OpenCV cv::pow() 2110 1
C++ Armadillo :: fliplr and flipud 892 2
C++ Armadillo :: Sort 1039 1
C++ Armadillo :: Determinant of Matrix 784 1
C++ Armadillo :: Indices of Unique elements of matrix 806 1
C++ Armadillo :: eps 432 3
C++ Armadillo :: Inverse 1169 1
C++ Armadillo :: Transpose of Matrix 1011 1
C++ Armadillo :: Basic Arithmetic Operations 420 1
C++ Armadillo :: Cross Product of vectors 1053 4
C++ OpenCV program to play a video 1037 1
C++ Armadillo :: Diagonal of Matrix 802 1
C++ Armadillo :: Absolute value of Matrix 1010 1
C++ Armadillo :: Conj 389 2
C++ Armadillo :: expmat 815 2
C++ OpenCV Input from Camera 1692 1
C++ OpenCV program to convert BGR image to grayscale image 4887 1
C++ Armadillo :: Intersect 666 2
C++ Armadillo :: Nonzeros 864 2
C++ Armadillo :: Dot Product of vectors 1462 2
C++ OpenCV:: Transforming BGR image to Grey scale image 526 2
C++ OpenCV to rotate an image 10002 1
C++ Armadillo :: Unique elements of matrix 716 1
C++ Armadillo :: Log Determinant 725 1
C++ Armadillo :: Sort_index 1301 2
C++ Armadillo :: Max Min 1372 1
C++ Armadillo :: Shift 754 1
C++ Armadillo :: Square root of Matrix 1513 1
C++ OpenCV cv::cvtColor() 2011 1

Comments