[解决]open cv error: (-215) scn == 3 || scn == 4 in function cvtColor

提供两种解决方案

跑CV的时候出现这个错误的解决方案:open cv error: (-215) scn == 3 || scn == 4 in function cvtColor

File "cv.py", line 11, in <module>
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.error: /home/arthurckl/Desktop/opencv-3.0.0-rc1/modules/imgproc/src/color.cpp:7564: error: (-215) scn == 3 || scn == 4 in function cvtColor

第一种:代码重复导致的

先上错误代码

import numpy as np
import cv2

img = cv2.imread('2015-05-27-191152.jpg',0)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

这种情况由于imread()函数第二个参数0代表自动把图片转为灰度图了,而“从cv2.cvtColor()”函数再次转变,引起歧义发生错误

修正为

import numpy as np
import cv2

img = cv2.imread('2015-05-27-191152.jpg')#除去第二个参数
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

第二种:路径设置错误导致的

先上错误代码

import cv2
import numpy

img = cv2.imread('C:/photos/img/test.png')
#或者  img = cv2.imread('C://photos/img/test.png')
#又或者img = cv2.imread('C://photos//img//test.png')

img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

这种情况是由于路径出错引起报错,必须写在根目录下的局部路径,而不能写全局路径

修正为

import cv2
import numpy

img = cv2.imread('./img/test.png')#从py文件根目录下载入

img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

以上就是我给大家分享的两种解决方案,如果对你有用别忘了给我点赞!

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值