Büyük resme istenen konumda görüntü eklemeye çalışıyorum. AddWeighted (src, alfa, su, -, dst, -) yaparak opencv içinde filigran eklemenin bir yolunu buldum, ama problem hem filigranın hem de yüzey görüntüsünün istemediğim boyutlarda olması gerektiğidir.filigran resmi büyütmek için tiklayiniz opencv4android
başka bir yol (sanırım)
Mat srcMat = cvCanvasImage.submat(top/2, (top + height)/2, left/2, (left + width)/2);
Imgproc.cvtColor(mat, srcMat, Imgproc.COLOR_GRAY2BGR,4);
Bulunan Ama bunun nasıl anlamıyorum ??
Teşekkür ..
GÜNCELLEME böyle
Mat cvCanvasImage = Highgui.imread(Environment.getExternalStorageDirectory() + "/wallpapers/castle.jpg");
// Small watermark image
Mat cvWaterImage = Highgui.imread(Environment.getExternalStorageDirectory() +"/square.png");
Size canvasSize = cvWaterImage.size();
int rows = (int) canvasSize.height;
int cols = (int) canvasSize.width;
int left = 0;
int top = 0;
int width = rows;
int height = cols;
Rect ROI = new Rect(left, top, width, height);
Core.addWeighted(cvCanvasImage.submat(ROI), alpha, cvWaterImage, beta, 0, cvCanvasImage.submat(ROI));
//now it throws me this error
"error: (-209) The operation is neither 'array op array' (where arrays have the same size and the same number of channels), nor 'array op scalar', nor 'scalar op array' in function void cv::arithm_op(const cv::_InputArray&, const cv::_InputArray&, const cv::_OutputArray&, const cv::_InputArray&, int, void (**)(const uchar*, size_t, const uchar*, size_t, uchar*, size_t, cv::Size, void*), bool, void*)"
Sorunu uygulayıp sorumu güncelledim, lütfen bir göz atın. hızlı cevap için zaten teşekkürler. – Khawar
çözüldü, teşekkürler – Khawar