小编Mat*_*w G的帖子

使用Java或Python从我的网络摄像头捕获单个图像

我想从我的网络摄像头捕获单个图像并将其保存到磁盘.我想用Java或Python(最好是Java)来做这件事.我想要一些适用于64位Win7和32位Linux的东西.

编辑:我使用Python 3.x,而不是2.x.

因为在其他任何地方我都看到这个问题让人们感到困惑,我将明确陈述一些事情:

  • 我不想使用Processing
  • 我不想使用除上述语言之外的任何语言
  • 我想以任何方式,形状或形式在屏幕上显示此图像
  • 我不想在屏幕上显示网络摄像头的实时视频,也不想将这样的视频保存到我的硬盘中
  • Java Media Framework太过时了.不建议.
  • 我宁愿不使用JavaCV,但如果我绝对必须,我想确切地知道我需要OpenCV库中的哪些文件,以及如何在不包含整个库的情况下使用这些文件(并且最好不要将这些文件放在任何类型的路径.一切都应该包含在一个目录中)
  • 如果需要,我可以在64位Win7计算机上使用Eclipse,但我也必须能够在32位Linux上编译和使用它.
  • 如果您认为我可能会或可能不会以任何形式或形式了解与此主题相关的内容,请假设我不知道,并告诉我

EDIT2:我能够使用Python 2.7和pygame 1.9.1让Froyo的pygame示例在Linux上运行.pygame.camera.camera_list()调用不起作用,但对于示例的其余部分则没有必要.但是,我不得不调用cam.set_controls()(你可以在这里找到http://www.pygame.org/docs/ref/camera.html的文档)来提高亮度,这样我才真正看到了我捕获的图像.

此外,我需要调用cam.get_image()和pygame.image.save()方法三次,然后我认为第一对调用的图像实际上被保存了.他们似乎陷入了一个奇怪的缓冲区.基本上,我不是一次调用cam.get_image(),而是每次想要捕获图像时都要调用它三次.然后我才调用pygame.image.save().

不幸的是,如下所述,pygame.camera仅在Linux上受支持.我仍然没有Windows的解决方案.

python java webcam image-capture javacv

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

从python2代码调用python3代码

我正在使用wxPython工具包设计GUI,这意味着它是用python2编写的.但是,我想将python3用于实际的应用程序代码.我如何从GUI调用我的python3代码?

python python-2.7 python-3.x

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

"(无分支)"与"(abc1234分离)"之间的区别

通常当你在git仓库中运行这样的东西时:

git checkout abc1234
Run Code Online (Sandbox Code Playgroud)

你最终处于一个独立的HEAD状态.如果你运行git branch,输出将如下所示:

* (detached from abc1234)
  master
Run Code Online (Sandbox Code Playgroud)

这是很好的预期行为.

我最近一直在玩pygit2,并且遇到过我以前没见过的东西.假设我做了以下事情:

repo = pygit2.discover_repository("/path/to/repo")
repo.head = "abc1234"
Run Code Online (Sandbox Code Playgroud)

我希望存储库处于独立的HEAD状态.出于所有意图和目的,我相信它是在这样做之后.但是,输出git branch看起来有点不同:

* (no branch)
  master
Run Code Online (Sandbox Code Playgroud)

有谁知道有什么区别,为什么会有差异,这意味着什么?

编辑:

下面是使用pygit2克隆存储库后的reflog,为repo.head分配提交SHA1哈希,然后运行git checkout master,然后运行git checkout myhash:

69df316 HEAD@{0}: checkout: moving from master to 69df3161f315e9b13ba4bd811635c11f67616598
d6ece61 HEAD@{1}: checkout: moving from 69df3161f315e9b13ba4bd811635c11f67616598 to master
69df316 HEAD@{2}:
d6ece61 HEAD@{3}: clone: from file:///path/to/repo
Run Code Online (Sandbox Code Playgroud)

git libgit2 git-branch pygit2

3
推荐指数
1
解决办法
724
查看次数

必须通过pthread_cond_signal唤醒对pthread_cond_wait的调用吗?

标题基本上说明了一切.如果我使用特定条件和互斥锁调用pthread_cond_wait,那么该线程是否会被阻塞,直到用相应的条件调用pthread_cond_signal?或者无论是否随后再次解锁互斥锁,它都会解锁?

如果答案是前者,我会进行跟进.我有一个队列用于我的线程之间的消息传递.我想确保一次只有一个线程可以将一个项目附加到队列中(因此使用互斥锁).没有任何线程知道是否有任何其他线程将等待自己持有互斥锁.

尝试将项目附加到队列时,我锁定互斥锁,等待队列没有填满pthread条件,然后执行追加,然后解锁互斥锁.在解锁之前,我应该执行pthread_cond_signal,即使我不知道是否还有其他线程在等待?如果多个线程在等待会发生什么?

c pthreads

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