You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyCharm中cv2.imread/resize报找不到引用及图像缩放异常问题

实现代码
import matplotlib.pyplot as plt
import numpy as np
import os
import cv2
#load data
data_directory = r"C:\Users\ikon\PycharmProjects\LogisticRegression\dataset\CnicData"
CATEGORIES = ['Cnic', 'noCnic']
for category in CATEGORIES:
    path = os.path.join(data_directory,category)
    for img in os.listdir(path):
        img_array = cv2.imread(os.path.join(path,img),
                               cv2.IMREAD_GRAYSCALE)
        IMG_SIZE = 50
        new_array = cv2.resize(img_array, (IMG_SIZE, IMG_SIZE))
        plt.imshow(img_array, cmap="gray")
        plt.show()
        break
遇到的问题
  • PyCharm中调用cv2.imread、cv2.resize方法时,IDE提示错误:Cannot find reference 'imread' in '__init__.py'、Cannot find reference 'resize ' in '__init__.py',已尝试卸载重装opencv库,问题未解决。
  • 计划通过设置IMG_SIZE参数调用cv2.resize缩放图像,但实际plt输出的图像并未按照设定尺寸呈现预期的像素化效果。
解决方案

cv2方法IDE提示找不到引用的问题

该问题是PyCharm对OpenCV的C扩展静态索引识别失败导致,并非库安装损坏,按以下步骤排查修复:

  1. 卸载当前环境中所有OpenCV相关包,执行pip uninstall opencv-python opencv-contrib-python opencv-python-headless 卸载干净后,重新执行pip install opencv-python opencv-contrib-python安装,避免同环境混装pip、conda源的OpenCV包引发索引冲突。
  2. 检查PyCharm项目解释器配置:打开设置 > Project: 项目名 > Python Interpreter,确认选中的解释器路径和你安装OpenCV包的环境路径一致,虚拟环境/全局环境不匹配是最常见的触发原因。
  3. 上述操作完成后仍报错的,执行File > Invalidate Caches...,勾选所有缓存清除选项,确认后重启PyCharm,等待索引重建完成即可。

该提示仅为IDE静态检查报错,只要代码运行时不抛出ModuleNotFoundError,就不会影响OpenCV功能的实际执行。

plt输出图像无缩放像素化效果的问题

代码逻辑存在变量传参错误:你已经将缩放后的图像存入new_array变量,但plt.imshow()传入的是原始未缩放的img_array,缩放后的数组根本没有被调用,自然不会出现预期效果。
修正对应代码段:

# IMG_SIZE建议挪到循环外定义,无需每次读图重复赋值
IMG_SIZE = 50
for category in CATEGORIES:
    path = os.path.join(data_directory,category)
    for img in os.listdir(path):
        img_array = cv2.imread(os.path.join(path,img),
                               cv2.IMREAD_GRAYSCALE)
        new_array = cv2.resize(img_array, (IMG_SIZE, IMG_SIZE))
        # 传入缩放后的new_array而非原始img_array
        plt.imshow(new_array, cmap="gray")
        plt.show()
        break

修改后运行即可看到50*50尺寸缩放后的像素化图像效果。

内容的提问来源于stack exchange,提问作者Sardar Raheem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 11:48:17