日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法

發布時間:2025/3/15 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

遇到了奇怪的錯誤:

cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgproc\src\resize.cpp:4045: error: (-215:Assertion failed) !ssize.empty() in function ‘cv::resize’

代碼如下

import numpy as np from matplotlib import pyplot as plt import cv2image = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE) image10x10 = cv2.resize(image, (10, 10)) print(image10x10.flatten())plt.imshow(image10x10, cmap="gray"), plt.axis("off") plt.show()print(image10x10.shape) print(image10x10.flatten().shape)image_color = cv2.imshow("plane_256x256.jp", cv2.IMREAD_COLOR) image_color_10x10 = cv2.resize(image_color, (10, 10)) print(image_color_10x10.flatten().shape)image_256x256_gray = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE) print(image_256x256_gray.flatten().shape)image_256x256_color = cv2.imshow("plane_256x256.jpg", cv2.IMREAD_COLOR) print(image_256x256_color.flatten().shape)

上網查了不少資料,覺得描述的不夠好,這里講講自己的看法。
一般來說都是路徑的問題,我測了一下報錯的image_color_10x10,發現加載完是None,這就相當于Java空指針了,顯然是加載有問題。
當然,筆者的錯誤其實很明顯:

  • imread()寫成imshow()
  • 路徑的jpg寫成jp
  • 下面說說普遍的情況:路徑不對。
    其實這種問題基本上都是路徑錯誤,路徑要注意:

  • 看的是圖片路徑
  • 路徑不能有中文以及qqgg的符號
  • 路徑用單斜線不要用反斜線
  • 絕對路徑和相對路徑都行,注意規則就行 (網上居然有說不能是相對路徑的,笑死,我用的就是相對的)
  • 圖片格式和名稱不要寫錯
  • ……
  • 好,就這樣吧,修改后的代碼:

    import numpy as np from matplotlib import pyplot as plt import cv2image = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE)# 將圖像尺寸轉換成10x10 image10x10 = cv2.resize(image, (10, 10))# 將圖像數據轉換成一維向量 print(image10x10.flatten())plt.imshow(image10x10, cmap="gray"), plt.axis("off") plt.show()print(image10x10.shape) print(image10x10.flatten().shape)# 以彩色模式加載圖像 image_color = cv2.imread("plane_256x256.jpg", cv2.IMREAD_COLOR) image_color_10x10 = cv2.resize(image_color, (10, 10))# 將該圖像數據轉換成一維數組并顯示數組維度 print(image_color_10x10.flatten().shape)image_256x256_gray = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE) print(image_256x256_gray.flatten().shape)image_256x256_color = cv2.imread("plane_256x256.jpg", cv2.IMREAD_COLOR) print(image_256x256_color.flatten().shape)

    總結

    以上是生活随笔為你收集整理的【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。