python cv.imread_Python的OpenCV cv2.imread总是返回None而cvFeatDetector崩溃了python

我用python中的opencv弄湿了自己的脚,并且我认为开始加载图像是一个很好的开始。

我在我的系统上构建了opencv,并且在目录tpl / opencv中有python绑定和opencv dll,这与我的项目相关。

以下是一些演示问题的代码:

from tpl.opencv import cv2

from tpl.opencv.cv2 import cv

from PIL import Image

pil_img = Image.open('C:/test_file.jpg') #Read a temp file, the input is actually a computed image chip

tmpname = 'C:/tmp.png'

pil_img.save(tmpname,'PNG') # Write the image chip to disk

im = cv.LoadImage(tmpname) # This seems to work

im2 = cv2.imread(tmpname) # This always returns None没有错误消息,im2只是无。我可以用我导入opencv的方式搞砸了吗?有一个简单的解决方法吗?

当我创建

cvFeatDetector = cv2.FeatureDetector_create("MSER")我得到了,所以cv2的一部分似乎工作

作为解决方法,我只是用numpy加载图像

im2 = numpy.imread(inname)

im = cv2.cvtColor(im2, cv2.COLOR_BGR2GRAY) # This works. I was able to imshow it too

cvFeatDetector = cv2.FeatureDetector_create("MSER") # Seems to produce a valid object

cvFeatExtractor = cv2.DescriptorExtractor_create("SIFT") # Seems to produce a valid object

kpts = cvFeatDetector.detect(im) # Crashes python我觉得这很奇怪,因为cv2.cvtColor成功将图像转换为灰度。所以一些cv2功能可以工作,而其他功能则不会有所不同。

编辑。我通过安装已发布的2.4版opencv修复了这个问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值