- Back to Home »
- Tutorial OpenCV Linux: #2 Load, Modify, and Save an Image
Posted by : M yunus
Sabtu, 01 Agustus 2015
Pada tutorial OpenCV kali ini anda akan mempelajari:
1. megambil gambar dari direktori anda dengan imread
2. merubah tampilan RGB menjadi keabuan (gratscale) dengan cvtColor
3. menyimpan hasil ubahan gambar dengan imwrite
Membuat file .cpp
buka terminal dan lakukan perintah berikut, setelah selesai menulis code simpan dengan perintah ctrl+x dan shift+y.
sudo nano RGBtoGrayscale.cpp
Code program
#include <cv.h>
#include <highgui.h>
using namespace cv;
int main(int argc, char ** argv){
char* imageName = argv[1];
Mat image;
image= imread( imageName, 1);
if(argc!=2 || !image.data)
{
printf( " No image data\n");
return -1;
}
Mat gray_image;
cvtColor( image, gray_image, CV_BGR2GRAY);
imwrite("/home/OPENCVlat/Gray_Image.jpg",gray_image);
namedWindow( imageName, CV_WINDOW_AUTOSIZE);
namedWindow("Gray_image", CV_WINDOW_AUTOSIZE);
imshow( imageName, image);
imshow( "Gray image", gray_image);
waitKey(0);
return 0;
}
Penjelasan Code Program:
terlebih dahulu masukan modul/library yang digunakan untuk mentransformasi image RGB ke Grayscale.
#include <cv.h>
#include <highgui.h>
pada program utama terlebih dahulu kita mengambil gambar pada direktori dan menyimpanya pada variabel dengan perintah imread.
Mat image;
image= imread( imageName, 1);
kita buat variabel lain untuk menyimpan gambar hasil transformasi ke grayscale dan dengan perintah cvtColor
Mat gray_image;
cvtColor( image, gray_image, CV_BGR2GRAY);
kita simpan hasil transformasi pada direktori anda dengan perintah imwrite
imwrite("/home/OPENCVlat/Gray_Image.jpg",gray_image);
kita akan menampilkan gambar RGB (asli) dengan gambar Grayscale (transformasi) pada window .
namedWindow( imageName, CV_WINDOW_AUTOSIZE);
namedWindow("Gray_image", CV_WINDOW_AUTOSIZE);
imshow( imageName, image);
imshow( "Gray image", gray_image);
Kompilasi program:
catatan:
pastikan pada folder anda membuat code program ini terdapat bash scrip build_all.sh. jika tidak copy paste saja dari direktori OpenCV anda pada folder samples/c/build_all.sh
lakukan perintah ini pada terminal:
chmod +x build_all.sh
./build_all.sh
jika tidak ada error maka anda dapat menjalankan code anda dengan perintah. (image name) --> sesuaikan dengan nama gambay yang anda dunakan dan pastikan berada dalam satu direktori yang sama dengan code program.
./RGBtoGrayscale (imagename).jpg
setelah itu anda akan mendapatkan gambar hasil transformasi dan gambar RGB seperti berikut.
Sumber:
Tutorials Opencv-2.4.9.pdf