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() 1443 1
C++ Armadillo :: Real and Imaginary part 1481 1
C++ OpenCV cv::perspectiveTransform() 4945 1
C++ Armadillo :: find_nonfinite 728 2
C++ Armadillo introduction and installation 551 1
C++ Armadillo :: Kron 1174 1
C++ Armadillo :: Accessing row and column and operations on it 1205 1
C++ Armadillo :: cond 436 2
C++ Armadillo :: pseudo-inverse 2642 1
C++ OpenCV cv::flip() 1660 1
C++ OpenCV cv::transpose() 6453 1
C++ Armadillo :: any 496 2
C++ Armadillo :: Max and Min of matrices 837 1
C++ OpenCV cv::pow() 2205 1
C++ Armadillo :: fliplr and flipud 935 2
C++ Armadillo :: Sort 1121 1
C++ Armadillo :: Determinant of Matrix 822 1
C++ Armadillo :: Indices of Unique elements of matrix 848 1
C++ Armadillo :: eps 452 3
C++ Armadillo :: Inverse 1305 1
C++ Armadillo :: Transpose of Matrix 1082 1
C++ Armadillo :: Basic Arithmetic Operations 433 1
C++ Armadillo :: Cross Product of vectors 1113 4
C++ OpenCV program to play a video 1093 1
C++ Armadillo :: Diagonal of Matrix 859 1
C++ Armadillo :: Absolute value of Matrix 1051 1
C++ Armadillo :: Conj 422 2
C++ Armadillo :: expmat 878 2
C++ OpenCV Input from Camera 1794 1
C++ OpenCV program to convert BGR image to grayscale image 5167 1
C++ Armadillo :: Intersect 703 2
C++ Armadillo :: Nonzeros 933 2
C++ Armadillo :: Dot Product of vectors 1523 2
C++ OpenCV:: Transforming BGR image to Grey scale image 545 2
C++ OpenCV to rotate an image 10523 1
C++ Armadillo :: Unique elements of matrix 759 1
C++ Armadillo :: Log Determinant 753 1
C++ Armadillo :: Sort_index 1370 2
C++ Armadillo :: Max Min 1435 1
C++ Armadillo :: Shift 822 1
C++ Armadillo :: Square root of Matrix 1604 1
C++ OpenCV cv::cvtColor() 2133 1

Comments