黎穆晨曦 2021-12-08 13:26 采纳率: 80%
浏览 247
已结题

显示show_cv_img没有定义,请问现在应该怎么办

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容

(840, 1500, 3)
---------------------------------------------------------------------------NameError Traceback (most recent call last)/tmp/ipykernel_100/97020620.py in
6 img = cv2.imread('0.png')
7 print(img.shape)
----> 8 show_cv_img(img)
9 # 显示原始图片
10 img = cv2.resize(img, None, fx=0.3, fy=0.3)
NameError: name 'show_cv_img' is not defined

我的解答思路和尝试过的方法
我想要达到的结果
import numpy as np 
import cv2 
from matplotlib import pyplot as plt 
%matplotlib inline
# 读入图片 
img = cv2.imread('0.png') 
print(img.shape) 
show_cv_img(img)
# 显示原始图片 
img = cv2.resize(img, None, fx=0.3, fy=0.3) 
rows, cols, channels = img.shape 
print(rows, cols, channels)
# 水平方向翻转 
Image1 = image[:, ::-1, :] 
plt.imshow(image1)
#图片转换为HSV灰度图,转换为hsv灰度图更利于背景的识别 
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) 
plt.imshow(hsv )
#图片二值化处理 
lower_blue = np.array([90, 70, 70]) 
upper_blue = np.array([110, 255, 255]) 
mask = cv2.inRange(hsv, lower_blue, upper_blue)    # 蓝色范围内变白,其余之外全部变黑
#腐蚀膨胀 去除图片中的噪点 
erode = cv2.erode(mask, None, iterations=1)  
dilate = cv2.dilate(mask, None, iterations=1)
plt.imshow(dilate)
#背景变换,遍历每个像素点,进行颜色的替换 
for i in range(rows):
    for j in range(cols):      
        if dilate[i, j] == 255:    #像素点为255表示的是白色,此处将白色处的像素点替换为红色                      
            img[i, j] = (0, 0, 255)     
    show_cv_img(img)

  • 写回答

1条回答 默认 最新

  • Python_QB 2021-12-08 13:35
    关注

    说明这个变量你没有定义,第8行和第32行,你需要定义一下这个变量

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月13日
  • 已采纳回答 2月13日
  • 创建了问题 12月8日

悬赏问题

  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了