PROBLEMA File (appena creato) not found! - Python 3.6

Pubblicità

Tommaso Sala

Utente Attivo
Messaggi
868
Reazioni
140
Punteggio
46
Buonsalve,
sto cercando di creare (con grosse difficoltà) un programma che faccia una scansione di un'immagine, la ripulisca per evitare il fastidioso alone di sottofondo una volta stampata e me la sintetizzi in un testo.
Per ora non mi interessa dell'interfaccia grafica, la creerò in seguito. L'errore mi stupisce molto. Mi era capitato un'altra volta con pygame ma avevo risolto mettendo il doppio slash (C:\\...\\...\\a.png). Mi sono assicurato che a fosse al proprio posto più e più volte, specifico che a2 viene creata ma non viene sintetizzata.
Innanzitutto ecco il codice:

Codice:
import pytesseract
from PIL import Image, ImageEnhance, ImageFilter
def stampa():
    testo = pytesseract.image_to_string(Image.open("C:\\Users\\SUINO\\Desktop\\a2.jpg"))
    print(testo)
im = Image.open("C:\\a.jpg")
im = im.filter(ImageFilter.MedianFilter())
contrasto = ImageEnhance.Contrast(im)
im = contrasto.enhance(3)
im = im.convert('1')
im.save("C:\\Users\SUINO\\Desktop\\a2.jpg")
stampa()

Eseguendolo mi riporta un errore in quanto dice che non riesce a trovare im (che ho salvato nella penultima riga). Ho messo la definizione per un disperato tentativo anche se non ha senso.
Dove sbaglio?
Errore:
Codice:
Traceback (most recent call last):
  File "C:\Users\SUINO\Desktop\Nuova cartella\scanner.py", line 13, in <module>
    stampa()
  File "C:\Users\SUINO\Desktop\Nuova cartella\scanner.py", line 5, in stampa
    testo = pytesseract.image_to_string(Image.open("C:\\Users\\SUINO\\Desktop\\a2.jpg"))
  File "C:\Python 3.6\lib\site-packages\pytesseract\pytesseract.py", line 122, in image_to_string
    config=config)
  File "C:\Python 3.6\lib\site-packages\pytesseract\pytesseract.py", line 46, in run_tesseract
    proc = subprocess.Popen(command, stderr=subprocess.PIPE)
  File "C:\Python 3.6\lib\subprocess.py", line 707, in __init__
    restore_signals, start_new_session)
  File "C:\Python 3.6\lib\subprocess.py", line 992, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] Impossibile trovare il file specificato
 
Nella funzione stampa prova a fare una semplice
Python:
Image.open("C:\\Users\\SUINO\\Desktop\\a2.jpg")
in questo modo escludiamo che ci sia un problema di asincronismo tra il save e l'open.
 
Quindi il file esiste, allora il problema è nella funzione image_to_string o qualche sua dipendenza che manca.
come posso fare? Dal sito di python mostra proprio questa sintassi. Ho provato a togliere image.open prima di image_to_string e mi presenta un errore alla riga 14 ('str' has not module save).
 
Giusto per curiosità, puoi postare l'immagine ? Se è scritta a mano, allora pytesseract ti servirà a niente...
Per me è questo. L'immagine può essere che non la riconosca perchè non è scritta "al computer" ma con caratteri a mano.
 
Giusto per curiosità, puoi postare l'immagine ? Se è scritta a mano, allora pytesseract ti servirà a niente...
Per me è questo. L'immagine può essere che non la riconosca perchè non è scritta "al computer" ma con caratteri a mano.
Sì certo ne ero a conoscenza, quella allegata è già stata parzialmente modificata dal programma. Tuttavia non dovrebbe avere difficoltà nel riconoscere la scritta in quanto verrebbe aumentato ulteriormente il contrasto.
 

Allegati

  • a.webp
    a.webp
    37.6 KB · Visualizzazioni: 71
Pubblicità
Pubblicità
Indietro
Top