Programımda görüntüyü kameradan alan ve tüm verileri OpenCV Mat
yapısında paketlemem gereken bir işlev var. Kameradan görüntü arabelleğine genişlik, yükseklik ve unsigned char*
olsun. Benim Soruum, global Mat değişkenim varsa Mat'ı bu verilerden nasıl oluşturabilirim. CV yapısı için CV_8UC1 aldım. opencv kamera veriminden mat oluştur
Mat image_;
function takePhoto() {
unsigned int width = getWidthOfPhoto();
unsinged int height = getHeightOfPhoto();
unsinged char* dataBuffer = getBufferOfPhoto();
Mat image(Size(width, height), CV_8UC1, dataBuffer, Mat::AUTO_STEP);
printf("width: %u\n", image.size().width);
printf("height: %u\n", image.size().height);
image_.create(Size(image.size().width, image.size().height), CV_8UC1);
image_ = image.clone();
printf("width: %u\n", image_.size().width);
printf("height: %u\n", image_.size().height);
}
benim programı test
, hemenwidth
ve
image
ait
height
fakat
width
ve
image_
0
benim küresel Mat
height
olsun. Verileri global
Mat
değişkenime nasıl yerleştirebilirim?
Teşekkür ederiz.
Merhaba Karlphilip, Stackoverflow'a katkıda bulunduğunuz ve bize yardımcı olduğunuz için çok teşekkür ederiz. OpenCV için yeni ve cevabınızı şu anda çalıştığım proje için oldukça faydalı buluyoruz. Hızlı bir sorum var, cv :: Mat ve cvMat ve cvCreateMat() arasındaki fark nedir? – user261002
'cv :: Mat', OpenCV'nin C++ arabirimi için Mat türüdür. cvMat, C arayüzü içindir. cvCreateMat(), C arabiriminde bir "cvMat" oluşturur. Bu konuyu daha fazla ele geçirmeyelim, eğer sorularınız varsa bunları yeni konulara sormakta özgürsünüz. Görüşürüz. – karlphillip