ImportError: невозможно импортировать имя 'dnn_superres' для python пример суперразрешения с opencv - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь запустить пример для масштабирования изображений со следующего веб-сайта: https://towardsdatascience.com/deep-learning-based-super-resolution-with-opencv-4fd736678066

Это код, который я использую:

import cv2
from cv2 import dnn_superres

# Create an SR object
sr = dnn_superres.DnnSuperResImpl_create()

# Read image
image = cv2.imread('butterfly.png')

# Read the desired model
path = "EDSR_x3.pb"
sr.readModel(path)

# Set the desired model and scale to get correct pre- and post-processing
sr.setModel("edsr", 3)

# Upscale the image
result = sr.upsample(image)

# Save the image
cv2.imwrite("./upscaled.png", result)

Я скачал уже обученную модель с веб-сайта под названием «EDSR_x3.pb», и когда я запускаю код, я получаю следующую ошибку:

Traceback (most recent call last):
  File "upscale.py", line 2, in <module>
    from cv2 import dnn_superres
ImportError: cannot import name 'dnn_superres'

Мне кажется, что такого метода или класса не существует. , но я уже установил opencv и модули contrib. Почему я получаю эту ошибку?

1 Ответ

0 голосов
/ 13 апреля 2020

У меня была такая же проблема с Python 3.6.9 и opencv 4.2.0, но после обновления до 4.3.0 проблема исчезла. Если у вас нет проблем с обновлением версии, попробуйте 4.3.0.

...