قراردادن لوگو روی تصویر - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

قراردادن لوگو روی تصویر

+1 امتیاز

// define ROI
imageROI= image(cv::Rect(385,270,logo.cols,logo.rows));
// load the mask (must be gray-level)
cv::Mat mask= cv::imread("logo.bmp",0);
// copy to ROI with mask
logo.copyTo(imageROI,mask);

لطفا این کد رو کامل و دقیق شرح دهید. (مخصوصا دستور دوم)

سوال شده اسفند 10, 1392  بوسیله ی مینو (امتیاز 29)   3 5
ویرایش شده اسفند 10, 1392 بوسیله ی مینو

1 پاسخ

+1 امتیاز
 
بهترین پاسخ
این کد قصد داره یک واترمارک (watermark) روی تصویر ایجاد کنه خط دوم ماسک مربوط به لوگو را از فایل می کنه خود logo از قبل لود شده حالا قصد داره خود لوگو را به صورت ترانسپارنت در تصویر اصلی کپی کنه .منظور از ترانسپارنت یعنی پشت زمینه logo که به فرض سفیده در تصویر اصلی کپی نشه فقط خود قسمت logo کپی شه.

خط آخر هم تصویر logo را در تصویر اصلی کپی می کنه و mask به copyTo میگه که فقط نواحی که در آن پیکسل های ماسک مخالف صفر هست در تصویر مقصد کپی کن.
پاسخ داده شده اسفند 10, 1392 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
انتخاب شد اسفند 10, 1392 بوسیله ی مینو
...