görüntü çözünürlüğü üzerine çalışıyorum görüntülerin boyutlarını küçültmek isterken bu hatayı alyorum yardımcı olabilecek var mıdır?
lr_img = cv2.resize(hr_img, (shape[1] / scale, shape[0] / scale),interpolation=cv2.INTER_LINEAR)
cv2.error: OpenCV(4.8.0)
error: (-5:Bad argument) in function ‘resize’
Overload resolution failed:
“- Can’t parse ‘dsize’. Sequence item with index 0 has a wrong type”
semtex
2
Kodunuzu şuradaki örneğe göre tekrar düzenlermisiniz.
Fonksiyonun ikinci girdi parametresi dsize düzgün biçimlendirilmemiş olabilir.
cv2.resize() - OpenCV Python function to Resize Image - Examples (tutorialkart.com)
Kodunuzun tamamını görmek gerek, float parametre girmiş olmanızdan şüpheleniyorum.
(shape[1] // scale, shape[0] // scale)
Bir de şöyle dener misiniz?
denedim şöyle bir hata aldım
TypeError: ‘float’ object cannot be interpreted as an integer
ne yapabilirim?
scale değerine kaç giriyorsunuz?
aib
8
açıkcası kodu alıntıladım tabi
https://github.com/MarkPrecursor/SRCNN-keras/blob/master/prepare_data.py kodum burdaki gibi aynı veri seti ile deniyorum.
semtex
10
lr_img = cv2.resize(hr_img, (shape[1] / scale, shape[0] / scale))
lr_img = cv2.resize(lr_img, (shape[1], shape[0]))
Verdiğiniz linkteki kod.
Bu da sizin kodunuz.
import cv2
img = cv2.imread('/home/img/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)
print('Resized Dimensions : ',resized.shape)
cv2.imshow("Resized image", resized)
cv2.waitKey(0)
cv2.destroyAllWindows()
Yukarıda da size önerdiğim linkteki basit kod.
dim’e int() ile yüklerseniz hata almazsınız.
Hem kod okunaklı olur hem de parantes vs kapatma açma gibi hatalardan da uzak durursunuz.
1 Beğeni