- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一堆图片可以使用各种方法很好地加载,例如 Image.open。但是当谈到opencv时,我什么也没得到:
from PIL import Image
import os
import cv2
for fi in os.listdir():
image = cv2.imread(fi)
print(image)
image = Image.open(fi)
print(image)
print(np.array(image.getdata()))
返回:
None
<PIL.PngImagePlugin.PngImageFile image mode=RGB size=1920x1080 at 0x8AF2A30>
[[31 63 84]
[31 63 84]
[31 63 84]
...
[16 16 16]
[16 16 16]
[16 16 16]]
无论我为 imread 的第二个参数给出什么值,它都保持不变。给出明确的路径也不会带来任何改变。
General configuration for OpenCV 4.4.0 =====================================
Version control: 4.4.0
Platform:
Timestamp: 2020-09-23T00:00:53Z
Host: Windows 6.3.9600 AMD64
CMake: 3.18.2
CMake generator: Visual Studio 14 2015
CMake build tool: C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe
MSVC: 1900
CPU/HW features:
Baseline: SSE SSE2
requested: SSE2
Dispatched code generation: SSE4_1 SSE4_2 FP16 AVX
requested: SSE4_1 SSE4_2 AVX FP16
SSE4_1 (15 files): + SSE3 SSSE3 SSE4_1
SSE4_2 (1 files): + SSE3 SSSE3 SSE4_1 POPCNT SSE4_2
FP16 (0 files): + SSE3 SSSE3 SSE4_1 POPCNT SSE4_2 FP16 AVX
AVX (4 files): + SSE3 SSSE3 SSE4_1 POPCNT SSE4_2 AVX
C/C++:
Built as dynamic libs?: NO
C++ standard: 11
C++ Compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/cl.exe (ver 19.0.24241.7)
C++ flags (Release): /DWIN32 /D_WINDOWS /W4 /GR /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:precise /arch:SSE /arch:SSE2 /EHa /wd4127 /wd4251 /wd4324 /wd4275 /wd4512 /wd4589 /MP /MT /O2 /Ob2 /DNDEBUG
C++ flags (Debug): /DWIN32 /D_WINDOWS /W4 /GR /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:precise /arch:SSE /arch:SSE2 /EHa /wd4127 /wd4251 /wd4324 /wd4275 /wd4512 /wd4589 /MP /MTd /Zi /Ob0 /Od /RTC1
C Compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/cl.exe
C flags (Release): /DWIN32 /D_WINDOWS /W3 /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:precise /arch:SSE /arch:SSE2 /MP /MT /O2 /Ob2 /DNDEBUG
C flags (Debug): /DWIN32 /D_WINDOWS /W3 /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /fp:precise /arch:SSE /arch:SSE2 /MP /MTd /Zi /Ob0 /Od /RTC1
Linker flags (Release): /machine:X86 /NODEFAULTLIB:atlthunk.lib /INCREMENTAL:NO /NODEFAULTLIB:libcmtd.lib /NODEFAULTLIB:libcpmtd.lib /NODEFAULTLIB:msvcrtd.lib
Linker flags (Debug): /machine:X86 /NODEFAULTLIB:atlthunk.lib /debug /INCREMENTAL /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libcpmt.lib /NODEFAULTLIB:msvcrt.lib
ccache: NO
Precompiled headers: YES
Extra dependencies: ade wsock32 comctl32 gdi32 ole32 setupapi ws2_32
3rdparty dependencies: ittnotify libprotobuf zlib libjpeg-turbo libwebp libpng libtiff libjasper IlmImf quirc ippiw ippicv
OpenCV modules:
To be built: calib3d core dnn features2d flann gapi highgui imgcodecs imgproc ml objdetect photo python3 stitching video videoio
Disabled: world
Disabled by dependency: -
Unavailable: java js python2 ts
Applications: -
Documentation: NO
Non-free algorithms: NO
Windows RT support: NO
GUI:
Win32 UI: YES
VTK support: NO
Media I/O:
ZLib: build (ver 1.2.11)
JPEG: build-libjpeg-turbo (ver 2.0.5-62)
WEBP: build (ver encoder: 0x020f)
PNG: build (ver 1.6.37)
TIFF: build (ver 42 - 4.0.10)
JPEG 2000: build Jasper (ver 1.900.1)
OpenEXR: build (ver 2.3.0)
HDR: YES
SUNRASTER: YES
PXM: YES
PFM: YES
Video I/O:
DC1394: NO
FFMPEG: YES (prebuilt binaries)
avcodec: YES (58.54.100)
avformat: YES (58.29.100)
avutil: YES (56.31.100)
swscale: YES (5.5.100)
avresample: YES (4.0.0)
GStreamer: NO
DirectShow: YES
Media Foundation: YES
DXVA: NO
Parallel framework: Concurrency
Trace: YES (with Intel ITT)
Other third-party libraries:
Intel IPP: 2020.0.0 Gold [2020.0.0]
at: C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-4q0kz99f/_skbuild/win32-3.7/cmake-build/3rdparty/ippicv/ippicv_win/icv
Intel IPP IW: sources (2020.0.0)
at: C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-4q0kz99f/_skbuild/win32-3.7/cmake-build/3rdparty/ippicv/ippicv_win/iw
Lapack: NO
Eigen: NO
Custom HAL: NO
Protobuf: build (3.5.1)
OpenCL: YES (NVD3D11)
Include path: C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-4q0kz99f/opencv/3rdparty/include/opencl/1.2
Link libraries: Dynamic load
Python 3:
Interpreter: C:/Python37/python.exe (ver 3.7.5)
Libraries: C:/Python37/libs/python37.lib (ver 3.7.5)
numpy: C:/Users/appveyor/AppData/Local/Temp/1/pip-build-env-5cllkua4/overlay/Lib/site-packages/numpy/core/include (ver 1.14.5)
install path: python
Python (for build): C:/Python27/python.exe
Java:
ant: NO
JNI: C:/Program Files/Java/jdk1.8.0/include C:/Program Files/Java/jdk1.8.0/include/win32 C:/Program Files/Java/jdk1.8.0/include
Java wrappers: NO
Java tests: NO
Install to: C:/Users/appveyor/AppData/Local/Temp/1/pip-req-build-4q0kz99f/_skbuild/win32-3.7/cmake-install
编辑 2
File: ... (1273217 bytes)
chunk IHDR at offset 0x0000c, length 13
1920 x 1080 image, 24-bit RGB, non-interlaced
chunk pHYs at offset 0x00025, length 9: 11811x11811 pixels/meter (300 dpi)
chunk IDAT at offset 0x0003a, length 65536
zlib: deflated, 32K window, default compression
chunk IDAT at offset 0x10046, length 65536
chunk IDAT at offset 0x20052, length 65536
chunk IDAT at offset 0x3005e, length 65536
chunk IDAT at offset 0x4006a, length 65536
chunk IDAT at offset 0x50076, length 65536
chunk IDAT at offset 0x60082, length 65536
chunk IDAT at offset 0x7008e, length 65536
chunk IDAT at offset 0x8009a, length 65536
chunk IDAT at offset 0x900a6, length 65536
chunk IDAT at offset 0xa00b2, length 65536
chunk IDAT at offset 0xb00be, length 65536
chunk IDAT at offset 0xc00ca, length 65536
chunk IDAT at offset 0xd00d6, length 65536
chunk IDAT at offset 0xe00e2, length 65536
chunk IDAT at offset 0xf00ee, length 65536
chunk IDAT at offset 0x1000fa, length 65536
chunk IDAT at offset 0x110106, length 65536
chunk IDAT at offset 0x120112, length 65536
chunk IDAT at offset 0x13011e, length 27727
chunk IEND at offset 0x136d79, length 0
No errors detected in ... (23 chunks, 79.5% compression).
编辑 3
Image:
Filename: ...png
Format: PNG (Portable Network Graphics)
Mime type: image/png
Class: DirectClass
Geometry: 1920x1080+0+0
Resolution: 118.11x118.11
Print size: 16.256x9.14402
Units: PixelsPerCentimeter
Colorspace: sRGB
Type: TrueColor
Base type: Undefined
Endianness: Undefined
Depth: 8-bit
Channel depth:
Red: 8-bit
Green: 8-bit
Blue: 8-bit
Channel statistics:
Pixels: 2073600
Red:
min: 0 (0)
max: 255 (1)
mean: 88.4175 (0.346735)
standard deviation: 48.6837 (0.190916)
kurtosis: 2.88645
skewness: 1.60217
entropy: 0.667925
Green:
min: 0 (0)
max: 255 (1)
mean: 78.7912 (0.308985)
standard deviation: 52.3865 (0.205437)
kurtosis: 2.33529
skewness: 1.54681
entropy: 0.672343
Blue:
min: 0 (0)
max: 255 (1)
mean: 134.848 (0.528816)
standard deviation: 81.9142 (0.321232)
kurtosis: -1.36843
skewness: -0.507794
entropy: 0.668643
Image statistics:
Overall:
min: 0 (0)
max: 255 (1)
mean: 100.686 (0.394846)
standard deviation: 60.9948 (0.239195)
kurtosis: -0.758096
skewness: 0.627416
entropy: 0.669637
Rendering intent: Perceptual
Gamma: 0.454545
Chromaticity:
red primary: (0.64,0.33)
green primary: (0.3,0.6)
blue primary: (0.15,0.06)
white point: (0.3127,0.329)
Matte color: grey74
Background color: white
Border color: srgb(223,223,223)
Transparent color: none
Interlace: None
Intensity: Undefined
Compose: Over
Page geometry: 1920x1080+0+0
Dispose: Undefined
Iterations: 0
Compression: Zip
Orientation: Undefined
Convex hull: 0,0 1919,0 1919,1039 1915,1079 104,1079 17,1066 16,1065 0,1039 0,0
Minimum bounding box: 1919,0 1919,1079 0,1079 0,0
Properties:
date:create: 2020-10-21T19:06:24+00:00
date:modify: 2020-10-21T19:22:08+00:00
minimum-bounding-box:_p: 0,0
minimum-bounding-box:_q: 1919,0
minimum-bounding-box:_v: 1915,1079
minimum-bounding-box:angle: 0
minimum-bounding-box:area: 2.0706e+06
minimum-bounding-box:height: 1919
minimum-bounding-box:unrotate: -0
minimum-bounding-box:width: 1079
png:IHDR.bit-depth-orig: 8
png:IHDR.bit_depth: 8
png:IHDR.color-type-orig: 2
png:IHDR.color_type: 2 (Truecolor)
png:IHDR.interlace_method: 0 (Not interlaced)
png:IHDR.width,height: 1920, 1080
png:pHYs: x_res=11811, y_res=11811, units=1
png:sRGB: intent=0 (Perceptual Intent)
signature: bcf111b6c823a95bd31bbec26225847dffa81c1a07cbf95cf07396f5404ffa5c
Artifacts:
verbose: true
Tainted: False
Filesize: 1.21423MiB
Number pixels: 2073600
Pixels per second: 28.8118MP
User time: 0.063u
Elapsed time: 0:01.071
Version: ImageMagick 7.0.10-34 Q16 x64 2020-10-08 http://www.imagemagick.org
最佳答案
它不能解决 imread 问题,但我找到了一种方法来实现我的目的:
image = Image.open(fi)
im_arr = np.array(image.getdata(), dtype=np.uint16).reshape(1080, 1920, 3)
im_arr = np.vectorize(lambda x: x/255)(im_arr)
cv2.imshow("image", im_arr)
cv2.waitKey()
不过我会进一步调查这个问题。
image = Image.open(fi)
im_arr = np.array(image.getdata()).reshape(1080, 1920, 3)
cv2.imwrite(os.path.join(path_data, "image_data_clean", rep, fi), im_arr)
image = cv2.imread(os.path.join(path_data, "image_data_clean", rep, fi))
在那种情况下,我确实不需要类型声明和映射(但仍在 reshape )
test = cv2.imread(os.path.join(path_data, "image_data", rep, fi))
print(test)
im_arr = np.array(Image.open(os.path.join(path_data, "image_data", rep, fi)))
print(im_arr.shape)
print(im_arr.dtype)
cv2.imshow("image", im_arr)
cv2.waitKey()
>>>
None
(1080, 1920, 3)
uint8
然后我现在得到了 shape 和 dtype 的预期答案,并且 imshow 可以完美地工作而无需 reshape /类型声明!我真的很确定今天早上不是这样,所以一定是文件有问题——或者我的大脑——而不是 PIL
关于python - 使用 PIL 打开图片时无法通过 cv2 (opencv 4.4) 加载图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64471506/
我到处都找了很多,找不到我的问题的答案。我试图从这个线程复制一个文本检测软件(Extracting text OpenCV)但是在代码的末尾有一条消息错误说没有匹配的矩形,即使我已经在上面绘制了一个并
我已经彻底搜索过,但没有找到直接的答案。 将 opencv 矩阵 (cv::Mat) 作为参数传递给函数,我们传递的是智能指针。我们对函数内部的输入矩阵所做的任何更改也会改变函数范围之外的矩阵。 我读
在我的应用程序中,我有一个通过引用接收 cv::Mat 对象的函数。这是函数的声明: void getChains(cv::Mat &img,std::vector &chains,cv::
我正在使用 Qt 编写一个 GUI 程序,并使用 OpenCV 进行一些视频处理。我在主 GUI 线程的标签中显示 OpenCV 进程(在单独的线程中)的结果。 我遇到的问题是 cv::waitKey
Mat a = (Mat_(3,3) = 2 int dims; //! the number of rows and columns or (-1, -1) when the arr
我尝试运行下面的代码,但出现错误。我正在为名为“Mat::at”的 OpenCV 函数创建一个包装器,并尝试使用“G++”将其编译为 Ubuntu Trusty 上的“.so”。我在下面列出了“.cp
我在 C# 中使用 EmguCV,当我想从网络摄像头抓取帧时遇到问题,语句中出现红色下划线: imgOrg = capturecam.QueryFrame(); error: Cannot impli
我正在尝试从另外两个矩阵生成一个 cv::Mat C,以便获得第三个矩阵,该矩阵由通过组合矩阵 A 和 B 的一维点生成的二维点构成。 我的问题是,我尝试的所有操作都只是连接矩阵,并没有真正将每个点与
我用 cv.imread在 python 中读取 png 文件。然后当我使用 cv.imwrite立即保存图像的功能我然后发现图像中的颜色略有变化。我正在尝试在此图像上执行字符识别,而 OCR 在 p
我尝试将 cv::bitwise_not 转换为 double 值的 cv::Mat 矩阵。我申请了 cv::bitwise_not(img, imgtemp); img是0和1的CV_64F数据。但
我正在尝试使用函数 cv.glmnet 找到最佳的 lambda(使用 RIDGE 回归)以预测某些对象的归属类别。所以我使用的代码是: CVGLM<-cv.glmnet(x,y,nfolds=34,
我有这个方法: static void WriteMatVect(const std::string& filename, const std::vector& mats); ... void Fil
下面的转换是我想要做的。 对于源图像中的每个图 block ,我知道每个角的坐标,并且我知道输出图像中每个对应角的坐标,所以我可以调用 cvWarpPerspective 扭曲每个图 block ,然
我必须在C++ / CLI中的托管和非托管代码中都使用OpenCV。 我正在尝试在托管代码中使用Emgu CV来包装OpenCV对象,但是在进行转换时遇到了麻烦。 我该怎么做: Emgu::CV::M
我正在尝试在 cv::Mat 中使用 CV_32FC4,以便它存储 RGBA32 图像。但是当我使用 cv::imwrite 将其保存为 png 文件时,结果文件始终是一个空图像。 例如,我创建了这样
无法在 VS 2017 中设置 OpenCV。我做错了什么?是的,我已将所有其他帖子设为红色。 代码: #include "opencv2/highgui/highgui.hpp" u
我有两个(相同大小,相同类型)cv:Mat 让我们称它们为 A,B。我还有另一个 cv::Mat,它是一个掩码(0 和 1 值或其他值,0 和 255 也适用)让我们称它为 M。 我需要构造一个新的
使用 OpenCV 中实现的 Scalar 类,我不明白这段代码有什么区别: Mat test; test = Scalar::all(0); 还有这个: Mat test = Scalar::all
我对这行代码感到困惑: cv::Mat_::iterator 我知道 Mat_ 属于 cv 命名空间和 vec3b 也。但是之后的最后一个 :: 操作符和 iterator 让我感到困惑!它也属于 c
我想优雅地将 Mat 转换为 Vec3f。目前我是这样做的: Mat line; Vec3f ln; ln[0] = line.
我是一名优秀的程序员,十分优秀!