cv2.seuil() erreur (-210)
Je suis nouveau sur Python.
Je veux définir la rotation du texte avec l'aide de la transformation de Fourier.
import cv2
import numpy as np
import matplotlib.pyplot as plot
img = cv2.imread ('Text_rot.bmp', cv2.CV_LOAD_IMAGE_GRAYSCALE)
afterFourier = np.log (np.abs(np.fft.fft2 (img)))
ret1, th1 = cv2.threshold (afterFourier, 127, 255, cv2.THRESH_BINARY)
Mais ce code ne fonctionne pas avec:
ret1, th1 = cv2.threshold (afterFourier, 127, 255, cv2.THRESH_BINARY)
error: ..\..\..\src\opencv\modules\imgproc\src\thresh.cpp:783: error: (-210)
Pourquoi ne fait que provoquer un "-210" erreur?
c'est l'erreur complet ? je ne l'espère pas. mais généralement, fft sur des données de type float, tandis que cv2.seuil veut uchar
C'est l'erreur complet
C'est l'erreur complet
OriginalL'auteur IvanovAndrew | 2014-05-09
Vous devez vous connecter pour publier un commentaire.
La OpenCV les codes d'erreur peut être regardé dans
types_c.h
.Code d'erreur -210 est défini comme:
Ainsi, vous aurez besoin de forcer votre image dans
uint8
type de données avant de passer àcv2.threshold
. Cela peut être fait avec numpy à l'aide de laastype
méthode:Ce sera tronquée, toutes les valeurs flottantes en
afterFourier
à 8 bits de valeurs, de sorte que vous voudrez peut-être faire quelques mise à l'échelle/arrondissement de la matrice avant de ce faire, en fonction de votre application.OriginalL'auteur ford