C++ OpenCV Transforming BGR image to Grey scale image














































C++ OpenCV Transforming BGR image to Grey scale image



---------------------------------------------------------------------------------------------------------------------
Description::
This is a C++ program to convert BGR image to greyscale image using cvtColor function present in the OpenCV library in c++. Greyscale images are required for any functions in OpenCV also they are useful in distinguishing in intensity between the pixels as extra inforation is not required to be submitted.
---------------------------------------------------------------------------------------------------------------------
Program::
#include <opencv2/opencv.hpp>
using namespace cv;

int main( int argc, char** argv )
{
  char* ImageFile = argv[1];               //image file 
  Mat image;                      //mat object for storing data
  image = imread( ImageFile, IMREAD_COLOR );          //read file
  if( argc != 2 || !image.data )
  {
     printf( " No image data \n " );
     return -1;
  }
  Mat gray_image;
  cvtColor( image, gray_image, COLOR_BGR2GRAY );             //convert image from grey to color
  imwrite( "/home/crmgogo/Pictures/greyImage.png", gray_image );
  namedWindow( ImageFile, WINDOW_AUTOSIZE );
  namedWindow( "Gray image", WINDOW_AUTOSIZE );
  imshow( ImageFile, image );                    //show window containing images
  imshow( "Gray image", gray_image );
  waitKey(0);      //to exit
  return 0;
}
---------------------------------------------------------------------------------------------------------------------
Commands to run program on terminal::
g++ -ggdb `pkg-config --cflags opencv` -o `basename cvopen .cpp` filename `pkg-config --libs opencv`

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


More Articles of Shubham Loya:

Name Views Likes
C++ OpenCV cv::trace() 1314 1
C++ Armadillo :: Real and Imaginary part 1313 1
C++ OpenCV cv::perspectiveTransform() 4515 1
C++ Armadillo :: find_nonfinite 627 2
C++ Armadillo introduction and installation 526 1
C++ Armadillo :: Kron 1059 1
C++ Armadillo :: Accessing row and column and operations on it 912 1
C++ Armadillo :: cond 402 2
C++ Armadillo :: pseudo-inverse 2362 1
C++ OpenCV cv::flip() 1458 1
C++ OpenCV cv::transpose() 5802 1
C++ Armadillo :: any 456 2
C++ Armadillo :: Max and Min of matrices 729 1
C++ OpenCV cv::pow() 1985 1
C++ Armadillo :: fliplr and flipud 854 2
C++ Armadillo :: Sort 997 1
C++ Armadillo :: Determinant of Matrix 753 1
C++ Armadillo :: Indices of Unique elements of matrix 764 1
C++ Armadillo :: eps 408 3
C++ Armadillo :: Inverse 1095 1
C++ Armadillo :: Transpose of Matrix 942 1
C++ Armadillo :: Basic Arithmetic Operations 411 1
C++ Armadillo :: Cross Product of vectors 969 4
C++ OpenCV program to play a video 992 1
C++ Armadillo :: Diagonal of Matrix 767 1
C++ Armadillo :: Absolute value of Matrix 969 1
C++ Armadillo :: Conj 376 2
C++ Armadillo :: expmat 800 2
C++ OpenCV Input from Camera 1597 1
C++ OpenCV program to convert BGR image to grayscale image 4647 1
C++ Armadillo :: Intersect 646 2
C++ Armadillo :: Nonzeros 824 2
C++ Armadillo :: Dot Product of vectors 1414 2
C++ OpenCV:: Transforming BGR image to Grey scale image 508 2
C++ OpenCV to rotate an image 9577 1
C++ Armadillo :: Unique elements of matrix 687 1
C++ Armadillo :: Log Determinant 700 1
C++ Armadillo :: Sort_index 1255 2
C++ Armadillo :: Max Min 1299 1
C++ Armadillo :: Shift 702 1
C++ Armadillo :: Square root of Matrix 1424 1
C++ OpenCV cv::cvtColor() 1917 1

Comments