OpenCV(4.8.0) /io/opencv/modules/imgproc/src/histogram.cpp:3440:
时间: 2023-08-09 19:09:30 浏览: 133
报错原因是直方图输入数据为uint16,而OpenCV要求数据格式为uint8。通常的图像文件格式使用的是Unsigned 8bits,对应的参数类型是CV_8UC1。而float是32位的,对应的参数类型是CV_32FC1。double是64位的,对应的参数类型是CV_64FC1。在代码中,可以尝试将输入数据转换为uint8格式后再进行直方图均衡化操作。
#### 引用[.reference_title]
- *1* *2* *3* [opencv 直方图均衡化(-215:Assertion failed) _src.type() == CV_8UC1 in function ‘equalizeHist](https://blog.csdn.net/zhuiyuanzhongjia/article/details/124775364)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
相关问题
OpenCV(4.8.0) /io/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cvtColor'
这个错误 "OpenCV(4.8.0) /io/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cvtColor'" 出现在颜色转换函数`cvtColor`中的断言处,表示输入图像为空。这通常是由于无法正确加载图像文件或路径错误导致的。请确保文件路径正确,并检查图像文件是否存在。同时,可以使用`cv2.imread()`函数来检查是否成功加载图像。
cv2.error: OpenCV(4.7.0) /io/opencv/modules/imgproc/src/resize.cpp:4062: err
这个错误是由 OpenCV 库中的 resize 函数引起的。它通常在尝试对图像进行缩放或重新采样时出现。具体来说,该错误可能是由以下原因之一引起的:
1. 输入图像的维度不正确。如果输入图像的维度太小或太大,resize 函数将无法处理它,并引发错误。
2. 目标图像的尺寸不正确。如果目标图像的尺寸不正确,resize 函数将无法处理它,并引发错误。
3. 由于内存不足或其他原因,无法为目标图像分配足够的内存。这可能与您正在处理的图像的大小有关,或者与您的计算机的内存限制有关。
要解决此错误,您可以尝试以下措施:
1. 确保输入图像和目标图像的尺寸和维度正确。
2. 确保您的计算机具有足够的内存来处理您的图像。您可以尝试减小图像的大小或缩放比例。
3. 检查您的代码中是否存在其他错误,例如尝试对空图像进行操作或使用无效的参数调用函数。