我想比較兩張圖片來評估他們的註冊。我想用棋盤格圖案覆蓋這兩個圖像,其中(例如)左上方的20×20像素塊顯示第一個圖像,然後在圖像1和圖像2之間交替。覆蓋兩張圖片
我已經寫在Matlab一個類似的腳本,其參與在另一個的頂部顯示一個圖像,然後施加棋盤透明度頂端圖像。這在OpenCV中可能嗎?
我想比較兩張圖片來評估他們的註冊。我想用棋盤格圖案覆蓋這兩個圖像,其中(例如)左上方的20×20像素塊顯示第一個圖像,然後在圖像1和圖像2之間交替。覆蓋兩張圖片
我已經寫在Matlab一個類似的腳本,其參與在另一個的頂部顯示一個圖像,然後施加棋盤透明度頂端圖像。這在OpenCV中可能嗎?
你最快的方法:
P.S.保存它作爲PNG/BMP圖像(沒有壓縮)
您肯定可以在圖像上雙向循環手動地使用alpha通道。
我實際上想提出一個測試註冊的替代方案,它可能更加敏感。您可以採用每個圖像的灰度表示(如果它們原來是顏色,則轉換爲灰色),並將它們放入新圖像的不同顏色通道中。在img2進入B時,在R和G中說img1。然後,您可以顯示新圖像。任何錯誤註冊的區域都會以顏色顯示,而正確註冊的部分則爲灰色。
感謝PXU,我曾想過你的建議,但我的兩個圖像是不同的模式(RGB和NIR)所以雖然圖像的一般外觀是相似的,但強度等不是,並且很難說出它們的對齊程度。 – Chris 2011-05-25 12:11:30
明白了。在這種情況下,最快捷的方法是創建一個新的圖像,並按照元素的方式訪問,以便在img1或img2中以大的double for循環複製像素。 – peakxu 2011-05-25 12:14:13
剛剛玩了一段時間,發現了以下解決方案。首先,我創建了一個棋盤圖案的圖像,然後我用它作爲一個面具,同時使用: cvAddS(one,cvScalar(0),dst,mask); cvNot(mask,mask); cvAddS(two,cvScalar(0),dst,mask); 這似乎工作! – Chris 2011-05-25 12:16:12