Pycharm OpenCV cv2.imshow hatası

Arkadaşlar pycharmda opencv çalışıyorum. Yeni başladım.
‘’’
import cv2
img=cv2.imread(‘pexels-craig-adderley-3526022.jpg’)
cv2.imshow(‘test1’, img)
cv2.waitKey(0)
‘’’
bu kodu girince line 3de cv2.imshow fonksiyonundan hata alıyorum (Video izliyorum kimse aynı hatayı almıyor videoda tek ben alıyorum internete baktım pek bir şey yok gibi duruyor)
‘’’
(-215:Assertion failed) size.width>0 && size.height>0 in function ‘cv::imshow’
‘’’
Hata Böyle Sebebi Nedir Bilen Var Mı?

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_gui/py_image_display/py_image_display.html

Even if the image path is wrong, it won’t throw any error, but print img will give you None

Yani pexels-craig-adderley-3526022.jpg diye bir dosya yoksa bile imread hata vermez diyor. Fakat imshow'a paslarsanız hata alıyorsunuz.

Yani pexels-craig-adderley-3526022.jpg diye bir dosya olduğundan emin misiniz? Ve de

The image should be in the working directory or a full path of image should be given.

dosyayı bulabilmeliyim, diyor.

1 Beğeni

evet masa üstünde yeni klasör açtım ve bu dosyayı onu içine attım, isminide elimle yazmadım yanlış olmasın diye direk kopyala yapıştır yaptım, acaba 2 tane aynı resimden olduğu için olabilirmi bilgisayarda, ama isimleri farklı birbirinden?

O zaman tam yol veriniz, şunun gibi

img = cv2.imread(r"C:\Users\KULLANICI_ADI\Desktop\ACTIGINIZ_KLASOR\pexels-craig-adderley-3526022.jpg")

KULLANICI_ADI ve ACTIGINIZ_KLASOR sizin bilgisayarda farklı isimlerde olabilir, onları değiştirebilirsiniz.

Bunda sorun yok

hocam bu çözümü biyerde görmüştüm, tam yol verdim bu sefer cv2.imread kısmında yani line 2 de none type gibi bir hata yazdı. anlamadım

Ben de anlamadım, belki kodu modifiye ettiğiniz haliyle atarsanız yanında hata mesajıyla birlikte, bir yol bulunabilir

cv2.imshow(‘test1’, img)
cv2.error: OpenCV(4.5.1) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-wvn_it83\opencv\modules\highgui\src\window.cpp:376: error: (-215:Assertion failed) size.width>0 && size.height>0 in function ‘cv::imshow’
böyle mi?

Tam Yol verdiğimde de line2 de yani cv2.imread’de şöyle bir hata veriyor bu sefer:

SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape

Sanki dosyanızda bir problem var,

bana

import cv2
img = cv2.imread("pexels-craig-adderley-3526022.jpg")
print(img.shape)

Bunun çıkısını atabilir misin?

Bu arada pexels-craig-adderley-3526022.jpg dosyası pc’nde çift tıkla açılıyor mu?

Başına r yazdınız mı yolun:

gibi. r içerdeki \ları kaçmaya yarıyor. Başına r yazmak veya içerdeki \ları çiftlemek gerek "C:\\Users... gibi.

2 Beğeni

AttributeError: ‘NoneType’ object has no attribute ‘shape’
bu tarz bir hata aldım print vermedi maalesef…

açılıyor evet normal resim

Yaptım hala aynı hatayı veriyor

O zaman bari o resmini, kodunun bulunduğu yere atıp öyle bir dene ilk olarak, oluyor mu diye.

import cv2
img = cv2.imread("pexels-craig-adderley-3526022.jpg")
cv2.imshow("deneme", img)

Daha sonra diğer sorunla ilgileniriz(herhangi bir yerdeki dosyayı açmak)

Edit:

Ne yaptığını bize de yazmalısın(yani kodu atmalısın), belki hocamızın dediğini sen yanlış şekilde uyguluyor olabilirsin.

import cv2
img=cv2.imread(‘pexels-pixabay-270404.jpg’)
print(img.shape)

Hata da Bu

Sorun şu: dosyayı bulamıyoruz. Kodunun olduğu klasörde exels-pixabay-270404.jpg diye bir dosya yok. İyi kontrol et.

Bu arada şuradaki dosya ile

Şuradaki dosya ismi aynı değil.

Örnek bir dosya dizini

deneme_klasoru/
    deneme1/
        kod.py
        resmin_ismi.jpg
import cv2
img = cv2.imread("resmin_ismi.jpg")
cv2.imshow("deneme ekrani", img)

Bunun kesinlikle çalışması lazım.

Ben resmi değiştirdim o yüzden ismi farklı. Resmi indirdikten sonra masaüstüne klasör açıyorum resmi onun içine atıyorum . Sonra yazmaya başlıyorum.

r yazarak denediğiniz kodu payalaşabilir misiniz, tam yolu verdiğiniz?

img=cv2.imread(r'C:\Users\OzanCdx\Desktop\aaaa\pexels-pixabay-270404.jpg')

Şu kodu çalıştırıp çıktısını paylaşabilir misiniz, True veya False:

import os

print(os.access(r'C:\Users\OzanCdx\Desktop\aaaa\pexels-pixabay-270404.jpg', os.F_OK))