簡體   English   中英

錯誤:“模塊 cv2.cv2 沒有屬性”

[英]Mistake : "module cv2.cv2 has no attribute"

我在編碼時突然遇到了一個問題。 我使用谷歌colab。
問題出在這一行:

img_original1 = cv2.recize(img_original, new_scale, 插值 = cv2.INTER_AREA)

錯誤信息是:

AttributeError: 模塊 'cv2.cv2' 沒有屬性 'recize'

我怎么解決這個問題? 我嘗試添加 opencv-contrib-python,因為它在類似主題中被告知,但是,此操作無濟於事。

這是代碼:

!pip install opencv-contrib-python
%time
img_original = cv2.imread(fileName, 0)  


scale_percentage = 50  
width = int(img_original.shape[1]*scale_percentage/100)  
height = int(img_original.shape[0]*scale_percentage/100)  
new_scale = (width, height)  
img_original1 = cv2.recize(img_original, new_scale, interpolation = cv2.INTER_AREA)  
cv2_imshow(img_original1)  
img_original1.shape  

img_original2 = cv2.medianBlur(img_original1, 5)  

template = cv2.imread(image_template, 0)  

width1, height1 = template.shape[:2]   

#Обработка изображения  
threshold_image = cv2.adaptiveThreshold(img_original2, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 11, 2)  
threshold_template = cv2.adaptiveThreshold(template, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 11, 2)   
cv2_imshow(threshold_image)  

#Размытие изображения  
blurred_image = cv2.GaussianBlur(threshold_image, (31,31), 0)  

#Сравнение с оригиналом, порог,    
result = cv2.matchTemplate(blurred_image,threshold_template,cv2.TM_CCOEFF_NORMED)  
threshold = 0.1  

#np.where (condition, [x,y]) при условии(булеан, массив), где True, возвращает значения х или у в зависимости от того, где True    
loc = np.where( result >= threshold)  

#Цикл где происходит обход изображения по рядам и колоннам по очереди и затем рисуется треугольник в областях, где находится совпадение  
for pt in zip(*loc[::-1]):  
    cv2.rectangle(blurred_image, pt, (pt[0] + width1, pt[1] + height1), (0,0,255), 1)  
cv2.imwrite('result.jpg', blurred_image)  
cv2_imshow(blurred_image)  
cv2_imshow(threshold_template)  
cv2_imshow(result)  

用於

img_original1 = cv2.resize(img_original, new_scale, interpolation = cv2.INTER_AREA)

另外,參考這個

import cv2
 
img = cv2.imread('/path/to/python.png', cv2.IMREAD_UNCHANGED)
 
print('Original Dimensions : ',img.shape)
 
scale_percent = 60 # percent of original size
width = int(img.shape[1] * scale_percent / 100)
height = int(img.shape[0] * scale_percent / 100)
dim = (width, height)
# resize image
resized = cv2.resize(img, dim, interpolation = cv2.INTER_AREA)

暫無
暫無

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

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