首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laplacian opencv失败,cv2.错误: OpenCV(4.1.2)

Laplacian opencv失败,cv2.错误: OpenCV(4.1.2)
EN

Stack Overflow用户
提问于 2020-01-17 22:50:47
回答 1查看 2.6K关注 0票数 2

我试图应用拉普拉斯的中值滤波输出,以获得更清晰的图像,通过以后的处理。代码片段如下所示:

代码语言:javascript
运行
复制
img = plt.imread('example.png')
img_res = cv.resize(img,(256,256))
gray_image = cv.cvtColor(img_res, cv.COLOR_BGR2GRAY)
median_img = median_filter(gray_image, 5)
# Calculate the Laplacian
lap_img = cv.Laplacian(median_img,cv.CV_64F)

输入图像是RGB医学图像。在运行此代码时,我面临以下错误:

代码语言:javascript
运行
复制
 cv2.error: OpenCV(4.1.2) C:/projects/opencv-python/opencv/modules/imgproc/src/filter.simd.hpp:3175: error: (-213:The function/feature is not implemented) Unsupported combination of source format (=5), and destination format (=6) in function 'cv::opt_AVX2::getLinearFilter'

此错误发生在数据集中的任何图像上。请你指出一下有什么问题吗?下面的例子来自于这个灰度图像的链接

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-17 23:00:12

与其使用两个不同的库(matplotlibopencv),不如在执行图像处理时一次使用一个库。原因是因为这两个库使用不同的格式存储图像。matplotlib使用RGB约定,而opencv使用BGR。我的猜测是,由于使用matplotlib加载映像,然后使用opencv执行操作,您会遇到此错误。简单地说,使用cv2.imread()而不是plt.imread()加载映像似乎解决了这个问题。

输入->输出

代码语言:javascript
运行
复制
import cv2
from scipy.ndimage.filters import median_filter
import numpy as np

img = cv2.imread('1.png')
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
median_img = median_filter(gray_image, 5)
# Calculate the Laplacian
lap_img = cv2.Laplacian(median_img,cv2.CV_64F).astype(np.uint8)

cv2.imshow('lap_img', lap_img)
cv2.imwrite('lap_img.png', lap_img)
cv2.waitKey()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59795803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档