OpenCV ve C++ ile Temel Görüntü Okuma İşlemleri

OpenCV ile resim , video ve webcam'dan görüntü okuma anlatılır

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>//cout için gerekli
 
using namespace std;
using namespace cv;
 
int main()
{
	//Resim Mat degiskeni olarak tanımlanıp dosya yeri belirtiliyor
    Mat img = imread("BmwM8.jpg");
	if (img.empty())
	{
		cout << "Resim acilamadi" << endl;
	}
	else
	{
		//Pencereyi oluşturuyor
        namedWindow("Resim Okuma", CV_WINDOW_AUTOSIZE); 
		imshow("Resim Okuma", img);
		//Bir tusa basılmasını bekliyor
        waitKey(0); 
		//Pencere kapanıyor
        destroyWindow("Resim Okuma"); 
	}
	return 0;
}
  • Kayıtlı bir resmi okuyan kodlar yukarıdadır;
#include <iostream>
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/core/core.hpp"
 
using namespace std;
using namespace cv;
 
int main()
{
	VideoCapture video("soygun.mp4");
	//Verilen yolda dosya bulunamazsa
    if (!video.isOpened())
	{
		cout << "Video acilamadi" << endl;
	}
	//Video'ya başlanacak süreyi milisaniye cinsinden belirtir
    video.set(CV_CAP_PROP_POS_MSEC, 2000); 
	double fps = video.get(CV_CAP_PROP_FPS);
	cout << "Video fps sayisi:" << fps << endl;
	//Video Player isimli penceremizi oluşturur
    namedWindow("Video Player", CV_WINDOW_AUTOSIZE); 
 
	//Sonsuz döngüye girer;
    while (true) 
	{
		Mat img;
		//Videoyu frame frame okuyor 
        bool frameOkundu = video.read(img); 
		//Tüm frameler okununca döngüyü bitirir
        if (!frameOkundu) 
		{
			cout << "Okunacak frame kalmadi" << endl;
			break; //donguden cik
		}
		imshow("Video Player", img);
		if (waitKey(30) == 27)
		{
			cout << "Esc ile cikis yapildi" << endl;
			destroyWindow("Video Player"); 
			break;
		}
	}
	getchar();
	system("Pause");
	return 0;
}
  • Kayıtlı videoyu okuyan kodlar yukarıdadır;
#include <iostream>

#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/core/core.hpp"

using namespace std;
using namespace cv;

int main()
{
	//Dahili Webcam için 0 değeri kullanılır
    VideoCapture video(0); 
	//Webcam açılmazsa
    if (!video.isOpened())
	{
		cout << "Webcam acilamadi" << endl;
	}
	//Penceremizi oluşturduk
    namedWindow("Webcam Player", CV_WINDOW_AUTOSIZE); 

	while (true) //sonsuz dongu
	{
		Mat img;
		//Videoyu frame olarak okuyor
        bool frameOkundu = video.read(img); 
		//Okunacak frame kalmadıysa döngüden çıkıyor
        if (!frameOkundu) 
		{
			cout << "Okunacak frame kalmadi" << endl;
			break; 
		}
		imshow("Webcam Player", img);
		if (waitKey(30) == 27) 
		{
			cout << "Esc ile cikis yapildi" << endl;
			destroyWindow("Webcam Player"); 
			break;
		}
	}
	system("Pause");
	return 0;
}
  • Webcam'dan görüntü alan kodlar yukarıdadır ;

İyi Çalışmalar...

Kaan Küçükturan
Antalya'da okuyan bir lise öğrencisi.
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git