Как прочитать файл, загруженный в Django? Это не str или path-подобный объект

Я работаю над проектом Django, в котором пользователи могут загружать изображение, а сервер обрабатывает это изображение для применения эффекта мультфильма с помощью OpenCV. Однако при попытке прочитать загруженный файл изображения с помощью cv2.imread().

я сталкиваюсь с ошибкой.

Вот мой код:

def create_cartoonify_content(request):
    if request.method == 'POST':
        file = request.FILES['file']
        title = request.POST['title']

        img = cv2.imread(file)
        edges = cv2.bitwise_not(cv2.Canny(img, 100, 200))
        gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
        gray = cv2.medianBlur(gray, 5)
        dst = cv2.edgePreservingFilter(img, flags=2, sigma_s=64, sigma_r=0.25)
        cartoon = cv2.bitwise_and(dst, dst, mask=edges)

        create_cartonist_content = Post.objects.create(user=request.user, title=title, file=cartoon)
        create_cartonist_content.save()
        return redirect('Home_Page') 
    return render(request, 'create_cartoonify.html')

Сообщение об ошибке:

error at /create_cartoonify
OpenCV(4.10.0) :-1: error: (-5:Bad argument) in function 'imread'
> Overload resolution failed:
>  - Expected 'filename' to be a str or path-like object
>  - Expected 'filename' to be a str or path-like object
>  - Expected 'filename' to be a str or path-like object
Вернуться на верх