问题标签 [cv2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 将 12 位 DICOM 图像转换为 8 位 jpeg
我正在尝试使用 dicom 库将 DICOM 文件加载到 python 中。我做了以下
这给了我看起来是 12 位的值,因为获得的最高值在 3047 左右,最低值为 0。然后我制作了自己的映射函数,将其带到 0-255 的范围内。我使用了以下代码:
这样做之后,我意识到数组 img_array 是 uint16 类型的。我希望它为 uint8,所以我使用以下行转换为 uint8:
然后我显示了结果图像。但我收到的图像不能很好地代表原始图像。我已经发布了原始图像和转换图像的图片。如何使转换更好,以便更好地表示原始图像?我用来显示的代码在这里:
图片
[1] 转换图:https ://i.stack.imgur.com/wdGCo.jpg [2] 原图:https ://i.stack.imgur.com/JyfYI.jpg
python - 如何在不使用 pip 的情况下导入 opencv?
我正在用 Python 2.5 编写一个应用程序,我希望能够在不使用 pip 的情况下导入 opencv ( https://github.com/opencv/opencv ) 或 cv2。我想使用 opencv 或 cv2 以便我可以以编程方式将一系列图像转换为视频。这会像将所有文件从 opencv 的 GitHub 复制并粘贴到我的 GitHub 上一样简单吗?这样,我可以从我的 GitHub 打开一个源代码文件并执行“import opencv”或“import cv2”。
如果没有,我该怎么做?
python - 安装 OpenEXR 后导入错误
如本页所示,我已在我的系统中安装了 OpenCV 3.0 。安装成功后,我从 python 导入了 cv2,但它给出了这个错误
在这个错误之后,我提到了这个错误的解决方案之一,其中提到了安装 openexr。但由于它已经存在于第 3 方文件夹中,所以我在 python sys.path 中插入了 OpenEXR 的路径。但它仍然给出同样的错误。
任何帮助表示赞赏!
python - OpenCV 打开文件错误(断言失败)
处理此代码时,OpenCV 给了我错误:
OpenCV 错误:cv::imshow 中的断言失败 (size.width>0 && size.height>0),文件 C:\bld\opencv_1498174012660\work\opencv-3.2.0\modules\highgui\src\window.cpp,第 304 行
回溯(最近一次通话最后):
文件“C:/Users/User/Desktop/Flow/FlowP/detect-extration - temp.py”,第 34 行,在
cv2.imshow('win',img)
cv2.error: C:\bld\opencv_1498174012660\work\opencv-3.2.0\modules\highgui\src\window.cpp:304: error: (-215) size.width>0 && size.height>0 in function简历::imshow
可能是什么?所有模块都正确导入,代码似乎一直有效,直到第一个 OpenCV 指令......
编辑:据我所见,它无法识别目录中的文件...但是该文件存在,是否存在...
这是它的外观:
python - 稳健地裁剪照片上的旋转边界框
我正在尝试稳健地提取轮廓的旋转边界框。我想拍摄一张图像,找到最大的轮廓,得到它的旋转边界框,旋转图像以使边界框垂直,然后裁剪到大小。
作为演示,这里是以下代码中链接的原始图像。我想最终将那只鞋旋转到垂直并裁剪成合适的尺寸。此答案中的以下代码似乎适用于 opencv 线条等简单图像,但不适用于照片。
以这个结束,它被旋转和裁剪错误:
编辑:将阈值类型更改为 后cv2.THRESH_BINARY_INV
,现在可以正确旋转但裁剪错误:
我怎样才能得到正确的裁剪?
python - 给定一个矩形列表,如何找到完全包含在其他矩形中的所有矩形?
我有一个计算机视觉算法,可以在检测到的对象周围放置边界框。边界框列表如下:
其中 x 和 y 是左上角的坐标,h 和 w 是框的高度和宽度。但是,我对完全包含在任何其他较大盒子中的盒子不感兴趣。检测这些的有效方法是什么?
python - 使用 Python 将屏幕截图保存在数组中
如何使用 python、mss 和 opencv 捕获我的计算机屏幕并将其保存为图像数组以形成电影?我正在转换为灰度,因此它可以是 3 维数组。我想将每个 2d 屏幕截图存储在 3d 数组中以供查看和处理。我很难构建一个数组来保存屏幕截图序列以及回放 cv2 中的屏幕截图序列。非常感谢
python - 色彩空间反转打嗝
由于 PIL 与 cv2 加载图像的方式不同,我经常处理 rgb->bgr 问题。通常我可以做
orig = orig[...,::-1]
但我遇到了一个奇怪的小问题(我使用的是 cv2 3.2);稍后将一些框添加到图像命中的函数
除了有效的方法之外,所有方法的各种方法都得到了评论,显示。rgb->bgr 之后的图像看起来很好,有正确的暗淡。deepcopy 是由于偏执狂认为问题是由 image_np 的某些更改引起的。
失败的功能是
和
它不是一个炫耀者,因为 cv2 转换可以做到这一点,但它令人深感不安
python - 出现错误:无法将大小为 122304 的数组重塑为形状 (52,28,28)
我正在尝试将 numpy 数组重塑为:
哪里data3
是:
data3.shape
是(52, 2352 )
但我不断收到以下错误:
发生了什么以及如何解决此错误?
更新:
我这样做data3
是为了获得上面使用的那个:
imagePaths 包含我的数据集中所有图像的路径。我实际上想将 data3 转换为 a flat list of 784-dim vectors
,但是
函数将其转换为 3072-dim 向量!!