Python OpenCV cv.WaitKey 在 Ubuntu 模 256 映射上正确返回奇怪的输出

2024-04-24

我正在使用 OpenCV 2.2 运行 Ubuntu 11.10 (Lenovo T400)(我相信导入是通过 import cv2.cv as cv 完成的)。如果我只是“导入简历”,也会发生这个问题。

我最近开始遇到这个问题,这有点奇怪。我不知道我做了什么重要的事情,自从它开始发生以来我就重新开始了。我安装了几个程序,但我认为这些不会影响这一点。

当我运行显示的人造图像(只是黑色图像)时,我尝试轮询 cv.WaitKey(10)。它会吐出垃圾。

这是我的 OpenCV 代码:

import cv2.cv as cv
import time

cv.NamedWindow("camera", 1)
img = cv.CreateImage((400,400), 8, 3)
valkeys = range(1,255)
f = open('/home/andrew/webuploads/keyboardtest', 'wb')
while True:
    cv.ShowImage("camera", img)
    k = cv.WaitKey(10)
    if k is -1:
        pass
    else:
        print 'writing %s' %str(k)
        f.write((str(k)+' '))

f.close()

这是我从程序中得到的输出:

1048678 1048676 1048673 1048691 1048676 1048678 1048689 1048695 1048677 1048688 1048687 1048681 1048677 1048677 1048695 1 048624 1048633 1048690 1048633 1048624 1048695 1048677 1048690 1048624 1048633 1048681 1048677 1048681 1048688 1048687 1048 677 1048681 1048692 1048688 1048681 1048688 1048687 1048681 1048681 1048688 1048687 1048585 1048687 1048681 1048688 1048687 1048681 1114085 1179728 1179727 1179721 1179728 1179721 1245153 1245289 1179727 1179721 1179727 1179721 1179728 1179727 1245155 1441865 1179728 1179727 1 179721 1179728 1179727 1179721 1179728 1179727 1179718 1179721 1179716 1179728 1179727 1179731 1179721 1179713 1179728 1179 727 1179687 1179723 1179716 1179736 1179724 1179715 1179734 1179725 1179692 1179736 1179738 1179725 1179715 1179734 1179692 1245155 1441859

现在我可以对这些数字取模 256 并得到一些合理的结果(刚刚尝试过,它正确地识别了我的所有密钥),但是,为什么我需要这样做?它以前确实工作过,没有做任何事情( print chr(k) 会给我一封信)。有人有主意吗?


模数起作用是因为有关密钥的信息存储在最后 8 位的返回值。 Ak & 255还将选择最后 8 位:

>>> k = 1048678
>>> chr(k & 255)
'f'

在Python中,chr(n)将返回对应的字符n。不幸的是,OpenCV 文档没有提供有关此问题的信息 http://opencv.itseez.com/modules/highgui/doc/user_interface.html?highlight=waitkey#cv2.waitKey.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python OpenCV cv.WaitKey 在 Ubuntu 模 256 映射上正确返回奇怪的输出 的相关文章

随机推荐

  • Chrome 浏览器在从 selenium 加载后立即关闭

    我正在运行一个基本的 python 程序来打开 Chrome 窗口 但是一旦代码执行 该窗口就会在那里停留一秒钟 然后立即关闭 from selenium import webdriver import time browser webdr
  • 如何组合杜松子酒中的路线组? [复制]

    这个问题在这里已经有答案了 我创建了两个不同的组gin具体路由 user and todo在两个不同的包中 我想将它们合并到一个文件中 这是我的userroutes go file package userrouter import git
  • 为复合对象编写比较器以进行二分搜索

    我有一个类和实例列表 看起来像这样 字段名称已更改以保护无辜 专有 public class Bloat public long timeInMilliseconds public long spaceInBytes public long
  • 使用 3DES 和 CBC 损坏的加密数据的前 8 个字节

    我在应用程序中使用 PyCrypto 来加密数据 但由于某种原因 无论我做什么 前 8 个字节 对应于第一个块 都会损坏 gt gt gt from Crypto Cipher import DES3 gt gt gt from Crypt
  • Rust 中的基本树和指针

    我拥有一些 C 语言背景 尝试 学习 Rust 让我对自己的能力产生了质疑 我正在尝试找出如何更改拥有的指针 并且正在努力做到这一点 除了从额外的库中复制之外 我无法弄清楚二叉树上所需的递归 特别是 我不知道如何交换指针分支 虽然使用链表我
  • 在 DNN 模块中执行 .exe

    我试图让我的 DNN 模块 6 1 3 在程序中发生特定条件时启动任何类型的可执行文件 此时我只是尝试让它运行记事本并创建一个文本文件 这就是我现在正在尝试的 ProcessStartInfo pi new ProcessStartInfo
  • SASS:直系后代规则?

    如何在 SASS 中表示直接后代 CSS 规则 Ex body gt div 在文档中似乎找不到它 http sass lang com docs yardoc file SASS REFERENCE html http sass lang
  • 将 Google 自定义搜索添加到 AMP 网站

    我有我的 Google 自定义搜索引擎 GCSE 代码
  • pip + requests.txt:奇怪的行为。不断下载各种版本的pandas

    这是用 pip 和 pandas 观察到的情况 以下是我的要求 txt asgiref 3 3 1 auditlog3 1 0 1 click 7 1 2 auditlog3 dj database url 0 5 0 Django 3 1
  • NSLog 上的 EXC_BAD_ACCESS 没有字符串格式

    我在以下代码行中收到 EXC BAD ACCESS 或 malloc 错误 NSLog Points 这对我来说毫无意义 因为它应该访问字符串常量而不是其他任何东西 通常是 EXC BAD ACCESS 但偶尔会出现以下错误 在同一行 An
  • scanf:内部带有宏(#define 常量)的模板

    我有一些像这样的代码 define MAXSIZE 100 int main char str MAXSIZE 1 scanf 100s str 问题是我仍然有 幻数 100 尽管定义了 MAXSIZE 有没有办法正确地将 MAXSIZE
  • 如何在 Symfony2 控制台命令中设置环境

    希望这是一个简单的问题 在 Symfony2 中运行控制台命令时如何指定使用哪个环境 我创建了一些命令 但是我想在我的临时服务器上的 临时 环境上下文中运行它们 在生产服务器上时在 产品 环境中运行它们 不同的环境定义不同的数据库连接 如何
  • 如何使用 Log4cxx 或 log4j 记录进程 ID

    我正在使用 log4cxx 我的项目 我可以使用 t 标记记录当前线程 id 如何在其中记录进程 id 或 log4j 我正在使用 ConversionPattern 和基于 xml 的配置文件 谢谢 基于以上答案 我将在 log4j 中执
  • 如何修复此警告“useLayoutEffect”相关警告?

    我将 NextJS 与 Material UI 和 Apollo 结合使用 虽然一切正常 但警告没有消失 在我看来 很多 Material UI 组件都在使用使用布局效果React 会发出警告 错误如下 警告 useLayoutEffect
  • ReferenceError:使用 CKEditor 时未定义 self [重复]

    这个问题在这里已经有答案了 ReferenceError 导入 CKEditor 时未定义 self 我正在使用 next js import CKEditor from ckeditor ckeditor5 react 已经安装使用 np
  • float 和 double 精度相关的概念

    为什么精度float小数点后最多 6 位 精度double小数点后最多15位 任何人都可以给一个数学解释 of it 说一下精度float or double是一些小数位数是草率的术语 float and double通常使用 IEEE 7
  • 输入具有最小和最大数字的值

    下面是一个输入数字表单 我使用 JavaScript 添加了一些代码 其中可写入的最小数字为 1 最大可写入数字为 50 当有人尝试输入任何小于 1 且大于 50 的数字时 它会自动将其替换为数字 1 或 50 但我没有成功实现此目标 我需
  • 为什么一个简单的 get 语句这么慢?

    几年前 我在学校接到一项作业 必须并行化光线追踪器 这是一项简单的任务 我真的很喜欢做它 今天 我想对光线追踪器进行分析 看看是否可以让它运行得更快 无需完全修改代码 在分析过程中 我注意到一些有趣的事情 Sphere Intersect
  • 使用 rMarkdown 自动生成报告

    我试图在 rMarkdown 中使用相同的模板生成大约 50 份报告 我不想每次都更改输入文件的名称 并且我想为输出文件选择不同的名称 有什么办法可以自动化这个过程吗 谢谢 另一种选择是在单独的 R 脚本中使用 rmarkdown 包的 r
  • Python OpenCV cv.WaitKey 在 Ubuntu 模 256 映射上正确返回奇怪的输出

    我正在使用 OpenCV 2 2 运行 Ubuntu 11 10 Lenovo T400 我相信导入是通过 import cv2 cv as cv 完成的 如果我只是 导入简历 也会发生这个问题 我最近开始遇到这个问题 这有点奇怪 我不知道