C++ OpenCV program to convert BGR image to grayscale image














































C++ OpenCV program to convert BGR image to grayscale 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() 1382 1
C++ Armadillo :: Real and Imaginary part 1387 1
C++ OpenCV cv::perspectiveTransform() 4670 1
C++ Armadillo :: find_nonfinite 651 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 420 2
C++ Armadillo :: pseudo-inverse 2479 1
C++ OpenCV cv::flip() 1526 1
C++ OpenCV cv::transpose() 6110 1
C++ Armadillo :: any 469 2
C++ Armadillo :: Max and Min of matrices 785 1
C++ OpenCV cv::pow() 2110 1
C++ Armadillo :: fliplr and flipud 891 2
C++ Armadillo :: Sort 1038 1
C++ Armadillo :: Determinant of Matrix 783 1
C++ Armadillo :: Indices of Unique elements of matrix 805 1
C++ Armadillo :: eps 432 3
C++ Armadillo :: Inverse 1168 1
C++ Armadillo :: Transpose of Matrix 1011 1
C++ Armadillo :: Basic Arithmetic Operations 420 1
C++ Armadillo :: Cross Product of vectors 1052 4
C++ OpenCV program to play a video 1037 1
C++ Armadillo :: Diagonal of Matrix 802 1
C++ Armadillo :: Absolute value of Matrix 1009 1
C++ Armadillo :: Conj 388 2
C++ Armadillo :: expmat 814 2
C++ OpenCV Input from Camera 1691 1
C++ OpenCV program to convert BGR image to grayscale image 4883 1
C++ Armadillo :: Intersect 665 2
C++ Armadillo :: Nonzeros 863 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 715 1
C++ Armadillo :: Log Determinant 724 1
C++ Armadillo :: Sort_index 1301 2
C++ Armadillo :: Max Min 1371 1
C++ Armadillo :: Shift 754 1
C++ Armadillo :: Square root of Matrix 1513 1
C++ OpenCV cv::cvtColor() 2010 1

Comments