2017-10-05 399 views
1

我有一個簡單的代碼來嘗試opencv圖像混合與addWeighted() 函數。它顯示我其中輸入參數opencv-python addWeighted()錯誤 - 輸入參數的大小不匹配

大小不匹配錯誤

以下是我的代碼

import cv2 
import numpy as np 

img1 = cv2.imread('/home/jianyepa/Downloads/gtr1.jpg') 
img2 = cv2.imread('/home/jianyepa/Downloads/r1.png') 

dst = cv2.addWeighted(img1,0.7,img2,0.3,0) 

cv2.imshow('dst', dst) 
cv2.waitkey(0) 
cv2.destroyAllWindows 

我有img.shape同時檢查圖像的大小和渠道,兩個圖像顯示(720,1280,3)。我不知道爲什麼會出現這個錯誤。

請協助。謝謝。

+1

嘗試將.png文件轉換爲.jpg文件,然後執行相同操作。 –

+0

@JeruLuke是的,你解決了我的問題。請添加爲答案。謝謝。 –

回答

0

可能出現的問題列表:

  1. 無論大小和圖像的通道數不匹配
  2. 或兩個圖像可能是不同的文件類型。

就你而言,這不是第一個。這兩個圖像都具有相同的尺寸和相同數量的通道。

但問題在於不同的圖像文件類型。 .png文件有另一個通道,稱爲alpha通道,它不存在於.jpg文件中。這會導致你的問題。

+0

根本原因:不同的文件類型。 –

相關問題