png图片缺乏某些库,导致损坏,或者多余了一些数据会导致以下报错:
libpng warning: iCCP: known incorrect sRGB profile
libpng warning iccp extra compressed data
一些可能的解决方案:
已有方案
来自:https://blog.csdn.net/qq_37924224/article/details/119181028
libpng 1.6及以上版本增强了ICC profiles检查,所以发出警告。从 PNG 图像中删除 iCCP profiles。
可以先读取,再重新保存:
import cv2
from skimage import io
image = io.imread(path)
image = cv2.cvtColor(image, cv2.COLOR_RGBA2BGRA)
cv2.imencode('.png',image)[1].tofile(path)
本文提供方案
观察到报错的图片根本无法打开,选择删除对应图片。
文件结构:
- all
- train
- folder1
- img1.png
- ....
- imgn.png
- foler2
- ...