小编Chr*_*itz的帖子

使用 python 查找视频中的图像

我想知道我是否以正确的方式处理这个问题,或者是否有一种更有效的方法。

我正在尝试寻找视频中的图像,就像在视频的每一帧上,该图像可能包含在其中的某个位置(它不是全尺寸的帧,只是一个小帧)。

目前将视频拉成图片,如下所示:

import cv2
vidcap = cv2.VideoCapture('My_Video.mp4')
success,image = vidcap.read()
count = 0
success = True
while success:
  success,image = vidcap.read()
  print ('Read a new frame: ', success)
  cv2.imwrite("frame%d.jpg" % count, image)     # save frame as JPEG file
  count += 1
Run Code Online (Sandbox Code Playgroud)

然后像这样循环遍历它们:

import cv2
import numpy as np
from matplotlib import pyplot as plt

img_rgb = cv2.imread('frame1.png')
img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY)
template = cv2.imread('small_icon_I_am_looking_for.png',0)
w, h = template.shape[::-1]

res = cv2.matchTemplate(img_gray,template,cv2.TM_CCOEFF_NORMED)
threshold = 0.8
loc = np.where( res >= …
Run Code Online (Sandbox Code Playgroud)

python opencv object-detection computer-vision

7
推荐指数
1
解决办法
7912
查看次数

谷歌colab python3名称cv2未定义

我导入了所有必需的库,并尝试使用 opencv 执行一个简单的图像识别程序,但出现了错误 cv2 未定义,但从安装了 open cv 的第一个单元格中可以看出,并且没有显示导入错误,就像我已经完成的那样!apt 更新了,我的版本是 3.4.0。对下面所附程序的任何帮助将不胜感激。提前致谢。

在此输入图像描述

python opencv google-colaboratory

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

在django中上传图像时如何更改图像格式?

当用户从 Django 管理面板上传图像时,我想将图像格式更改为'.webp'。我已经重写了模型的保存方法。Webp 文件在 media/banner 文件夹中生成,但生成的文件未保存在数据库中。我怎样才能做到这一点?

def save(self, *args, **kwargs):
    super(Banner, self).save(*args, **kwargs)
    im = Image.open(self.image.path).convert('RGB')
    name = 'Some File Name with .webp extention' 
    im.save(name, 'webp')
    self.image = im
Run Code Online (Sandbox Code Playgroud)

但是保存模型后,Image 类的实例未保存在数据库中?

我的模型类是:

class Banner(models.Model):
    image = models.ImageField(upload_to='banner')
    device_size = models.CharField(max_length=20, choices=Banner_Device_Choice)
Run Code Online (Sandbox Code Playgroud)

python django image django-models python-imaging-library

7
推荐指数
1
解决办法
1279
查看次数

如何将 tesseract 添加到我的 Docker 容器中以便我可以使用 pytesseract

我正在开发一个项目,需要我在 docker 容器上运行 pytesseract,但无法将 tesseract 安装到容器上,我也不知道 pytesseract 的文件路径应该是什么

我的 Dockerfile:

FROM python:3
ENV PYHTONUNBUFFERED=1
RUN apt-get update && apt-get install -y --no-install-recommends \
      bzip2 \
      g++ \
      git \
      graphviz \
      libgl1-mesa-glx \
      libhdf5-dev \
      openmpi-bin \
      wget \
      python3-tk && \
    rm -rf /var/lib/apt/lists/*
 



WORKDIR /usr/src/app
COPY requirements.txt ./
RUN pip install -r requirements.txt
ENV QT_X11_NO_MITSHM=1
Run Code Online (Sandbox Code Playgroud)

我的 pytesseract 代码:

path_to_tesseract = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
pytesseract.tesseract_cmd = path_to_tesseract

            img=cv2.imread(fpath)
            img=cv2.resize(img,None,fx=2,fy=2, interpolation=cv2.INTER_CUBIC)
            text=pytesseract.image_to_string(img)
Run Code Online (Sandbox Code Playgroud)

python opencv tesseract docker python-tesseract

7
推荐指数
1
解决办法
9336
查看次数

如果图像被裁剪/调整大小,Camera Intrinsics 将如何变化?

我有一个来自 Realsense 相机的录制相机 ROS 包文件。所记录设置的相机内部结构已经知道。图像的初始分辨率为848*480。由于相机视场中有一些视觉障碍,我想裁剪掉图像的顶部,这样我正在使用的视觉 SLAM 算法就不会检测到它。
由于 SLAM 严重依赖于相机内部函数,我想知道相机参数f_xf_yc_x会如何c_y变化:

  1. 裁剪图像
  2. 调整图像大小(仅限图像缩放)

图像尺寸变化

原始相机参数不存在倾斜。
新的基点c_x是否也会改变为Cropped_image_width我对如何计算新的相机参数有点困惑?我对案例 1 - 裁剪案例的以下假设是否正确:

在此输入图像描述

camera computer-vision camera-calibration

7
推荐指数
1
解决办法
2490
查看次数

ERR_BLOCKED_BY_ORB 与木偶操纵者

我正在开发 Express JS API,用于将 base64 HTML 转换为 PDF。

\n

我正在使用 Puppeteer 进行此转换。在 HTML 代码中,有一个图像托管在需要身份验证的专用服务器上。\n我在尝试从此第三方服务器检索图像时遇到问题。\n在采用“headless: false”模式的 Chromium 中,我收到这些错误:

\n

**“无法加载资源:net::ERR_BLOCKED_BY_ORB。” **

\n

请注意,Cookie 存在于 Chromium 中。

\n

(我在加载 Google 字体时也遇到了 CORS 政策问题。)

\n

我的错误在这里:

\n

1

\n

\xe2\x86\x92 我的木偶代码:

\n
export class PdfManager {\n  async convertToPdf({ content, jwtToken }: HtmlToPdfTypes) {\n    const cookie = [\n      {\n        name: "user",\n        value: jwtToken,\n        domain: ".mysubdomain.domain.com",\n        httpOnly: false,\n        secure: false,\n        hostOnly: false,\n      },\n    ];\n\n    const browser = await puppeteer.launch({\n      headless: false,\n      args: [\n        // "--disable-web-security",\n        "--no-sandbox",\n …
Run Code Online (Sandbox Code Playgroud)

request node.js cors puppeteer

7
推荐指数
1
解决办法
6735
查看次数

Python中的多线程cv2.imshow()不起作用

我有两个摄像头(使用 OpenNI,每个摄像头有两个流,由驱动程序 API 的同一实例处理)并且希望有两个线程,每个线程独立地从每个摄像头捕获数据,即对于驱动程序 API 的一个实例,比如说cam_handler,我有两个流depthrgb每个摄像头,cam_handler.RGB1_stream比如说cam_handler.DEPTH1_stream

这是相同的代码:

import threading

def capture_and_save(cam_handle, cam_id, dir_to_write, log_writer, rgb_stream,
                     depth_stream, io):
    t = threading.currentThread()
    shot_idx = 0
    rgb_window = 'RGB' + str(cam_id)
    depth_window = 'DEPTH' + str(cam_id)
    while getattr(t, "do_run", True):
        if rgb_stream is not None:

            rgb_array = cam_handle.get_rgb(rgb_stream)
            rgb_array_disp = cv2.cvtColor(rgb_array, cv2.COLOR_BGR2RGB)
            cv2.imshow(rgb_window, rgb_array_disp)
            cam_handle.save_frame('rgb', rgb_array, shot_idx, dir_to_write + str(cam_id + 1))
            io.write_log(log_writer[cam_id], shot_idx, None)

        if depth_stream is not None:
            depth_array = cam_handle.get_depth(depth_stream)
            depth_array_disp …
Run Code Online (Sandbox Code Playgroud)

python multithreading opencv

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

OpenCV cv2.imshow 有时显示黑色图像

我正在 ubuntu 20.04、python 3.7 上尝试 OpenCV。我已经运行了以下脚本

import cv2
img = cv2.imread('butterfly.jpg')
cv2.imshow('ImageWindow', img)
cv2.waitKey()
Run Code Online (Sandbox Code Playgroud)

有时我会得到原始蝴蝶图像的可爱图片 ,但有时我会得到一个黑色的小窗口

该行为有点随机,我不确定是什么导致了这个问题。

python opencv

6
推荐指数
1
解决办法
2253
查看次数

类型错误:create_int():函数参数不兼容

我最近一直在使用 python 学习计算机视觉,在制作手部检测器项目时,我遇到了这个错误:-

Traceback (most recent call last):
File "c:\Users\idhant\OneDrive - 007lakshya\Idhant\Programming\Projects\MY MACHINE 
LEARNING PROJECTS\Hand Tracking Module.py", line 64, in <module>
main()
File "c:\Users\idhant\OneDrive - 007lakshya\Idhant\Programming\Projects\MY MACHINE 
LEARNING PROJECTS\Hand Tracking Module.py", line 41, in main
detector = handDetector()
File "c:\Users\idhant\OneDrive - 007lakshya\Idhant\Programming\Projects\MY MACHINE 
LEARNING PROJECTS\Hand Tracking Module.py", line 13, in __init__
self.hands = self.mpHands.Hands(self.mode, self.maxHands, self.detectionCon, 
self.trackCon)
File "C:\Users\idhant\AppData\Roaming\Python\Python39\site- 
packages\mediapipe\python\solutions\hands.py", line 114, in __init__
super().__init__(
File "C:\Users\idhant\AppData\Roaming\Python\Python39\site- 
packages\mediapipe\python\solution_base.py", line 258, in __init__
self._input_side_packets = {
File "C:\Users\idhant\AppData\Roaming\Python\Python39\site- 
packages\mediapipe\python\solution_base.py", line 259, …
Run Code Online (Sandbox Code Playgroud)

python opencv mediapipe

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

如何在 Python 中以尽可能高的质量将 PDF 转换为 JPG/PNG?

我想将 PDF 转换为图像,以便可以对其进行 OCR。但在转换过程中质量会下降。

使用 Python 将 PDF 转换为图像(JPG/PNG)似乎有两种主要方法 - pdf2imageImageMagick / Wand

#pdf2image (altering dpi to 300/600 etc does not seem to make a difference):
pages = convert_from_path("page.pdf", dpi=300)
    for page in pages:
        page.save("page.jpg", 'JPEG')

#ImageMagick (Wand lib)
with Image(filename="page.pdf", resolution=300) as img:
    img.compression_quality = 100
    img.save(filename="page.jpg")
Run Code Online (Sandbox Code Playgroud)

但如果我只是在 Mac 上截取 PDF 的屏幕截图,质量会比使用任何一种 Python 转换方法都要高。

看到这一点的一个好方法是在生成的图像上运行 Tesseract OCR - 两种 Python 方法都给出平均结果,而屏幕截图给出完美结果。(我尝试过 PNG 和 JPG。)

假设我有无限的时间、计算能力和存储空间。我只对图像质量和 OCR 输出感兴趣。完美的图像触手可及,但却无法在代码中生成,这是令人沮丧的。

这里发生了什么?有没有更好的方法来转换 PDF?有没有办法可以更直接地控制?是什么让屏幕截图比实际转换效果更好?

python image imagemagick wand

6
推荐指数
1
解决办法
7394
查看次数