标签: libpng

使用 open cv imread 时出现“libpng 错误:读取错误”

我目前使用的是 Anaconda 4.3.27、Python 3.6.2 和 OpenCV 3.3.0

当我尝试时

img1 = cv2.imread('D:\Images\3D-Matplotlib.png')
img2 = cv2.imread('D:\Images\mainsvmimage.png')
Run Code Online (Sandbox Code Playgroud)

我得到libpng error: Read Error并出现一个弹出窗口,表明 Python 停止工作。我已经尝试用“\\”和“/”替换“\”,但在这些情况下也会出现相同的错误。当我尝试读取 jpg 而不是 png 时,我没有收到错误。有人知道这里可能有什么问题吗?

提前致谢!

编辑:

cv2.imwrite 也给出错误:

libpng error: Write Error
Run Code Online (Sandbox Code Playgroud)

python opencv libpng anaconda imread

5
推荐指数
1
解决办法
2万
查看次数

在 Windows 10 x64 中使用 CMAKE、FetchContent 和 Visual Studio 2019 构建 libpng 和 zlib 时出现链接错误

我正在尝试使用 CMAKE 构建 libpng,但它需要 zlib,所以我正在尝试构建它们,但没有任何运气。我喜欢 FetchContent,这样我就可以指定一个 GIT_TAG,并在将来需要时轻松更新它。现在我只有一个空白的 test.c 文件来说明问题。

我收到这些链接错误:

LNK1120 1 unresolved externals 
MinimalApp\out\build\x64-Debug\_deps\libpng-build\png-fix-itxt.exe

LNK2019 unresolved external symbol crc32 referenced in function main
Run Code Online (Sandbox Code Playgroud)

当我用这个 CMakeLists.txt 构建时

cmake_minimum_required (VERSION 3.14)

include(FetchContent)

project(MinimalApp)

FetchContent_Declare(
    zlib
    GIT_REPOSITORY https://github.com/madler/zlib.git
    GIT_TAG        v1.2.11
)

FetchContent_MakeAvailable(zlib)

set(ZLIB_INCLUDE_DIR ${zlib_SOURCE_DIR} ${zlib_BINARY_DIR})
set(PNG_BUILD_ZLIB ON CACHE BOOL "Custom zlib Location, else find_package is used")

FetchContent_Declare(
    libpng
    GIT_REPOSITORY  https://github.com/glennrp/libpng.git
    GIT_TAG        v1.6.37
)
FetchContent_MakeAvailable(libpng)

include_directories(
    ${libpng_SOURCE_DIR}
    ${libpng_BINARY_DIR}
)

add_library(MinimalApp SHARED 
    "test.c"
)

set_target_properties(MinimalApp PROPERTIES
    LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/../bin/${CMAKE_BUILD_TYPE}/x64
    RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/../bin/${CMAKE_BUILD_TYPE}/x64
) 
Run Code Online (Sandbox Code Playgroud)

我的 test.c 文件是空白的。

cmake libpng

5
推荐指数
1
解决办法
1514
查看次数

有没有libPNG 64位?

我有libPNG的问题,这让我相信我需要一个64位版本的libPNG才能在64位计算机上运行我的应用程序.错误是IMG_Load: Failed loading libpng15-15.dll: %1 is not a valid Win32 application.根据本网站上的其他一些帖子,这是一个32位DLL的事实,是这个问题吗?

c++ windows png image libpng

4
推荐指数
1
解决办法
7814
查看次数

使用Xcode 4.3.1存档应用程序给pngcrush捕获了libpng错误:

该应用程序在模拟器和设备上构建良好.但是一旦我尝试将其存档以供提交,我会得到:阅读/ Users/adga/Documents/Adams Lokalt/Appar /NOWÅ/ VertragingsApp/Rotation/Customization/Herfst2011 /../../../ default @ 2x.png pngcrush捕获了libpng错误:PNG无符号整数超出范围.

我试图在photoshop中打开并替换(没有隔行扫描),但它不起作用.

有任何想法吗?

archive libpng ios xcode4 pngcrush

4
推荐指数
2
解决办法
9255
查看次数

libpng中的内存泄漏?还是我只是愚蠢的?

Valgrind抱怨我的一些代码,但这段代码几乎就是文档中的示例libpng代码:

Valgrind输出的一个例子.

==15847== 14,384 bytes in 31 blocks are definitely lost in loss record 239 of 240
==15847==    at 0x4C28F9F: malloc (vg_replace_malloc.c:236)
==15847==    by 0x5837381: ??? (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0)
==15847==    by 0x581FD63: png_create_info_struct (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0)
==15847==    by 0x67837C: Star::Image::loadPng(char const*) (StarImage.cpp:35)
==15847==    by 0x4E7721: Star::Assets::threadedFetchImage(Star::String const&, bool) (StarAssets.cpp:400)
==15847==    by 0x4EB4F4: Star::Assets::threadPoolMain() (StarAssets.cpp:256)
==15847==    by 0x6B18B9: Star::ThreadImpl::runThread(void*) (StarThread_unix.cpp:19)
==15847==    by 0x5CE2EFB: start_thread (pthread_create.c:304)
==15847==    by 0x6A1359C: clone (clone.S:112)
Run Code Online (Sandbox Code Playgroud)

和第35行的代码方法.第35行由注释标记并以.开头 png_infop end_info

ImagePtr Image::loadPng(char const* filename) {
  FILE *fp = fopen(filename, "rb"); …
Run Code Online (Sandbox Code Playgroud)

c++ png valgrind memory-leaks libpng

4
推荐指数
1
解决办法
3101
查看次数

在Windows 7中编译Libpng或获取Libpng12.dll(并了解如何在VS中链接.DLL)

我一直在Windows 7中使用Libpng15,但我一直在收到与之相关的错误

编译代码时出现未解决的外部_png_set_longjmp_fn错误.我按照前面提到的链接中的说明进行操作,虽然DID编译时没有任何错误,但最后我收到一条消息说我需要继续使用libpng12.dll.

所以,我为libpng12.dll做了一些谷歌搜索...没有出现但是通用的"查找x.dll"网站似乎是骗局.

我已经尝试在他们的网站上阅读libpng源代码的INSTALL文档,我所看到的就是如何通过基于Unix的系统来完成它的说明.我试图在Cygwin中做到这一点没有运气,所以我有点不知道如何编译这个库.

总而言之,我愿意做编译或只使用.dll,虽然问题是我找不到版本12 的工作 .dll.

我尝试的另一件事是从这里下载二进制文件,声称是"libpng12 for windows".然后我将文件复制到我的VC编译器目录中,我认为这会覆盖libpng15.不过,当我静态链接它并在VC中运行我的程序时,它说我需要.DLL文件.libpng12.dll文件实际上是一个.dll.a文件.老实说,我不确定是否链接这些(我尝试通过VS在链接器输入设置中键入"libpng12.dll.a"静态链接它).

如果我可以使用libdng12的.dll路由,我该怎么做?文件在哪里?如何在VS中链接它?

任何帮助,将不胜感激,因为它似乎是不是真的有一个整体大量的这些信息.不管怎样,或者我只是不正常.

dll compilation visual-c++ libpng

4
推荐指数
1
解决办法
9710
查看次数

在Mac OS X mavericks中找不到<png.h>

我尝试(显然成功)安装libpng在mac os x mavericks上.

我下载了最新的1-6-8版本.tar.xz并按照说明操作.

./configure 运行正常

make check 传递除跳过的png-error之外的所有内容

sudo make install我的图书馆libpng显然工作正常.出现.

现在,当我尝试编译我需要编译的C文件时,使用字符串

clang -w -lz -lpng16 libpng_test.c

我收到了错误

fatal error: 'png.h' file not found

#include <png.h>

显然它不会编译.

我尝试使用自制软件和macports安装,它似乎总是运行良好,但我总是得到相同的错误

c macos xcode png libpng

4
推荐指数
1
解决办法
1万
查看次数

import matplotlib.pyplot给出了ImportError:dlopen(...)库未加载libpng15.15.dylib

导入pyplot会出错:

In [1]: import matplotlib
In [2]: import matplotlib.pyplot as plt
ImportError                               Traceback (most recent call last)
<ipython-input-2-eff513f636fd> in <module>()
----> 1 import matplotlib.pyplot as plt
/Users/r8t/anaconda/lib/python2.7/site-packages/matplotlib/pyplot.py in <module>()
     25
     26 import matplotlib
---> 27 import matplotlib.colorbar
     28 from matplotlib import style
     29 from matplotlib import _pylab_helpers, interactive

/Users/r8t/anaconda/lib/python2.7/site-packages/matplotlib/colorbar.py in <module>()
     32 import matplotlib.artist as martist
     33 import matplotlib.cbook as cbook
---> 34 import matplotlib.collections as collections
     35 import matplotlib.colors as colors
     36 import matplotlib.contour as contour
/Users/r8t/anaconda/lib/python2.7/site-packages/matplotlib/collections.py in <module>() …
Run Code Online (Sandbox Code Playgroud)

macos matplotlib libpng

4
推荐指数
1
解决办法
8698
查看次数

在Linux服务器上配置ImageMagick上的PNG

我一直在尝试在Linux服务器上运行ImageMagick上的以下脚本

convert resized.png -gravity Center -crop 1024X768+0+0 +repage flower.png
Run Code Online (Sandbox Code Playgroud)

但一直遇到以下错误:

convert: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501.
convert: no images defined `flower.png' @ error/convert.c/ConvertImageCommand/3212.
Run Code Online (Sandbox Code Playgroud)

看起来PNG没有代表.

当我跑:

identify -version
Run Code Online (Sandbox Code Playgroud)

我得到这个结果,表明没有安装PNG委托:

Version: ImageMagick 6.9.0-4 Q16 x86_64 2015-01-25       http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates (built-in): bzlib freetype jpeg lcms tiff x zlib
Run Code Online (Sandbox Code Playgroud)

据我所知,我的服务器上安装了"libpng".

如何在Linux服务器上为ImageMagick配置PNG委托?

我安装了'yum'但不是'apt-get'.

linux png delegates imagemagick libpng

4
推荐指数
1
解决办法
1万
查看次数

加载共享库时出错:libpng16.so.16

问题是我正在尝试使用nodejs从scss构建一些css文件.在本地计算机上一切正常.

当我运行npm run production它时显示错误:

ERROR in ./resources/assets/sass/images/promo.jpg
Module build failed: Error: Command failed: /var/www/vhosts/site.ru/shared/node_modules/mozjpeg/vendor/cjpeg
/var/www/vhosts/site.ru/shared/node_modules/mozjpeg/vendor/cjpeg: error while loading 
shared libraries: libpng16.so.16: cannot open shared object file: No such file or 
directory
Run Code Online (Sandbox Code Playgroud)

但是当我从另一个目录运行相同的命令时(例如/var/www/vhosts/site2.ru/:),一切正常(脚本也适用于jpg文件).

如果我跑,ldconfig -p | grep libpng我看到下一个:

 libpng12.so.0 (libc6,x86-64) => /lib/x86_64-linux-gnu/libpng12.so.0
 libpng12.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libpng12.so.0
Run Code Online (Sandbox Code Playgroud)

所以,我的Libng12工作正常,为什么系统需要libpng16?在这种情况下我应该尝试做些什么?

我的系统是Ubuntu 16.04

ubuntu shared-libraries libpng node.js

4
推荐指数
1
解决办法
4711
查看次数