在opencvpython中使用SIFT时如何处理图像的深度?

2024-10-06 11:31:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在python中使用opencv在处理过程中使用SIFT。我有一张组织的灰度图像,我把图像分割成小块,我想用SIFT找出每个斑块(here Patch1)上的关键点。在

以下是我的部分代码:

sift = cv2.xfeatures2d.SIFT_create()
kp,des = sift.detectAndCompute(Patch1,None)

但是,运行时,它给我的图像深度误差:

^{pr2}$

当我再次尝试将图像转换为灰度时,会出现以下错误:

error: depth == CV_8U || depth == CV_16U || depth == CV_32F in function cvtColor 

同样的错误也发生在我尝试使用ORB时。在

我的原始图像有.png格式。我对原始图像做了大量的处理以得到Patch1。可能是因为我在处理过程中做了一些改变? 你知道我该怎么做吗?或者怎么了?在


Tags: 代码图像here错误cv2opencvcv灰度