testing-repository/OpenCV_test/test3_imageobject/main.cpp

40 lines
1014 B
C++
Raw Normal View History

2022-07-15 09:19:00 +08:00
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
int main(int argc, char ** argv){
std::string filename, save_images;
std::cin >> filename;
std::cout << "Save gray and hsv images? (Y/N)";
std::cin >> save_images;
// Open the image
Mat image, image_hsv, image_gray;
image = imread(filename, IMREAD_COLOR);
if(image.empty()){
std::cout << "failed to open the image";
return -1;
}
cvtColor(image, image_hsv, COLOR_BGR2HSV);
cvtColor(image, image_gray, COLOR_BGR2GRAY);
// Show the converted images
namedWindow("Original Image", WINDOW_FREERATIO);
imshow("Original Image", image);
namedWindow("HSV Image", WINDOW_FREERATIO);
imshow("HSV Image", image_hsv);
namedWindow("Gray Image", WINDOW_FREERATIO);
imshow("Gray Image", image_gray);
// Write the images
imwrite("image_gray.png", image_gray);
imwrite("image_hsv.png", image_hsv);
waitKey(0);
destroyAllWindows();
return 0;
}