Как получить текст из изображения в веб-приложении Django с помощью tesseract?
я создаю веб-приложение django для извлечения текста из изображений. я хочу использовать для этого tesseract. но код tesseract python работает нормально на windows pc и не работает в веб-приложении django.
вот ошибка, когда я запускаю код python с помощью кнопки html click button
tesseract-ocr/tesseract.exe не установлен или его нет в вашем пути.
вот мой python код для tesseract в django web app
def text1():
global img
import pytesseract as tess
tess.pytesseract.tesseract_cmd = r'Tesseract-OCR\\tesseract.exe'
from PIL import Image
def program():
img = Image.open("./static/img/figure-65.png")
text = tess.image_to_string(img)
print(text)
program()
вызов функции text1 при нажатии html-кнопки, и она правильно установлена в views.py и urls.py
На этом изображении показано, где находится код tesseract python и tesseract.exe В imageToText.py находится python-код.
Вы можете видеть Tesseract-OCR Папку, в которой находятся **tesseract.exe**.
urls.py веб-приложения
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name="home"),
path('openC', views.openC, name="openC"),
path('text1', views.text2, name="text1"),
]
urls.py основного веб-проекта
from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from img2text.settings import MEDIA_ROOT
urlpatterns = [
path('admin/', admin.site.urls),
path('', include("imgtext.urls"))
]+ static(settings.MEDIA_URL, document_root=MEDIA_ROOT)
views.py
from django.shortcuts import render,redirect
from .form import ImageForm
from .models import Image
from .imageToText import text1
from .opencvtext import openCv
def home(request):
if request.method == "POST":
form=ImageForm(data=request.POST,files=request.FILES)
if form.is_valid():
form.save()
obj=form.instance
return render(request,"index.html",{"obj":obj})
else:
form=ImageForm()
img=Image.objects.all()
return render(request,"index.html",{"img":img,"form":form})
def openC(request):
openCv()
def text2(request):
text1() #tesseract function call
Итак, что я сделал не так? Как это исправить или любой другой способ получить текст из изображения в django python?
