在用Caffe训练神经网络的时候,需要创建数据库文件,但是有些图片会导致控制台一大堆警告…

下载libpng源码

wget https://sourceforge.net/projects/libpng/files/libpng16/1.6.36/libpng-1.6.36.tar.xz

修改png.c文件

if (png_sRGB_checks[i].is_broken != 0)
	 /* These profiles are known to have bad data that may cause
		* problems if they are used, therefore attempt to
		* discourage their use, skip the 'have_md5' warning below,
		* which is made irrelevant by this error.
	 // 注释掉下边这两行代码
	 // png_chunk_report(png_ptr, "known incorrect sRGB profile",
	 //     PNG_CHUNK_ERROR);
sudo apt install zlib* -y
sudo apt install gcc make cmake -y
./configure && make -j && sudo make install
                    在用Caffe训练神经网络的时候,需要创建数据库文件,但是有些图片会导致控制台一大堆警告…下载libpng源码wget https://sourceforge.net/projects/libpng/files/libpng16/1.6.36/libpng-1.6.36.tar.xz修改png.c文件if (png_sRGB_checks[i].is_broken != 0){	 /...
				
cv::imdecode 在将string类型图像解码的时候,会出现segmentation fault。程序直接崩溃,让人崩溃的是,catch 不到任何错误。 通过各种方法定位到是各种格式奇葩的4通道图片导致,比如某些编辑器输出的png图片。 在持续怼了3天之后,发现是协程导致的问题。关掉协程,哪怕用多进程跑,只会抛出以下warning,程序继续运行。 libpng error: bad...
警告1:minCorrupt JPEG data: premature end of data segment 警告2:minlibpng warning: Incorrect sBIT chunk length 都是因为所读取的图片的颜色空间是BGRA,或者非RGB颜色空间的其他颜色空间,所以知道了原因之后就是把图片的颜色空间转为RGB空间即可。 引申问题: 那么,如何查看图像的颜色空间是什么呢? 这个问题我找了好久,最快的方式还是直接查官方文档。 pillow包可以查看 用python3.6.6 写了一段很简单的图像卷积处理代码,然后很奇怪的,出现一段报错: libpng warning: iCCP: cHRM chunk does not match sRGB 卷积代码如下: import matplotlib.pyplot as plt import pylab import cv2 import numpy as np img = plt.imread("Test.jpg",0) #在这里读取图片 # img = plt.imread("Test2.jpg" import os img = cv2.imread('/cloud_disk/users/huh/dataset/cityscapes/leftImg8bit/val/lindau/lindau_000043_000019_leftImg8bit.png', -1) # (shape: (1024, 2048, 3)) 读取图片出现: libpng error: IDAT: CRC error 同时报错(实时语义分割任务): img = cv2.resize(img,...
方案1,改写libpng源码,在打印处加入文件名(改写成功,生成了lib和dll,但未见打印效果)。 方案2,使用GIMP手动改写png的色彩配置文件为sRGB v4 ICC preference.ICC 色彩配置文件,效率低 方案3,使用ImageMagic 编写Python脚本批量删除文件内置的sRGB配置文件,由此发现png图片名字中带有空格的执行脚本失败,且剩余未转换图片数与libpn
1.libpng warning: iCCP: known incorrect sRGB profilelibpng 2.warning: iCCP: cHRM chunk does not match sRGB 二、问题原因 原因就是这个因为libpng 1.6,太敏感了,1.6及以上版本增强了ICC profiles检查,所以发出警告。 libpng 警告:iCCP:已知不正确的 sRGB 配置文件。 您可以忽略该警告。要摆脱它,请从 PNG 图像中删除 iCCP profi 下载ImageMagick Display(网上也可以搜索下载ImageMagick),下载完毕后将ImageMagick安装到E:\Programs目录下面,如果Programs不存在则创建一个。 创建脚本ImageMagick-Fix-PNG.bat,编写执行脚本 进入到图片目录,将ImageMagick-Fix-PNG.bat拷贝到图片目录,然后打开cmd进入到图片目录,执行脚本,如下图,等待“请按任意键继续”的文本出现,这时已经执行完毕。 首先了解png,bmp文件格式的特点,本篇不详细介绍。 bmp图片是微软的图片格式,就是原始的像素数据加上bmp文件头组成,像素数据是倒装的,即第一个像素的(RGB)三个字节再原始文件的最后。png是原始数据压缩后加入png格式文件描述。 下载libpng和zlib的源码,放在同一个目录中 由于libpng实际上使用的是zlib的算法,libpng是zl
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 图像