簡體   English   中英

如何創建透明墊

[英]How to create transparent Mat

我正在嘗試創建透明墊,但我得到了黑色背景圖像作為回報,所以我不知道該怎么做,因為我必須在相機視頻源上用一些內容覆蓋這個圖像。

我試過的代碼。

cv::Mat comp = cv::Mat::zeros( currentImage.size(), CV_8UC4 );
comp.setTo(cv::Scalar(0,0,0,0));
imshow( "transparent", comp );   // show black background image.

感謝@HansHire 和@Scheff,我們發現問題出在 cv::imshow() 中,它不呈現透明度,因此要檢查 Mat 的透明度,需要將其轉儲到磁盤以使用系統圖像查看器進行檢查,該查看器可以很好地呈現透明度

cv::Mat comp = cv::Mat::zeros( currentImage.size(), CV_8UC4 );
comp.setTo(cv::Scalar(0,0,0,0));
// imshow( "transparent", comp );   // show black background image because it cant render transparency .
imwrite( "C:/opencv_dump.png", comp );  // transparent upon opening , thumbnail may look black.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM