TensorFlow OpenCV网络摄像头悬挂
tensorflow + opencv webcam hangs
环境:Mac Machine,用访客OS在虚拟机内运行我的代码:ubuntu 14.4 lts。
我正在示例中在Tensorflow工作区中编译OpENCV。我的工作区和opencv.build文件看起来与此处提到的文件相似
我为OpenCV TensorFlow项目的构建文件如下:
package(default_visibility = ["//tensorflow:internal"])
licenses(["notice"]) # Apache 2.0
exports_files(["LICENSE"])
cc_binary(
name = "label_image",
srcs = [
"main.cc",
],
linkopts = ["-lm"],
copts = ["-DWITH_FFMPEG=OFF"],
deps = [
"//tensorflow/cc:cc_ops",
"//tensorflow/core:framework_internal",
"//tensorflow/core:tensorflow",
"@opencv//:opencv"
],
)
filegroup(
name = "all_files",
srcs = glob(
["**/*"],
exclude = [
"**/METADATA",
"**/OWNERS",
"bin/**",
"gen/**",
],
),
visibility = ["//tensorflow:__subpackages__"],
)
如果我禁用TensorFlow依赖关系(并且还要评论与TensorFlow相关的代码)。我可以看到网络摄像头可以正确捕获。这样:
deps = [
#"//tensorflow/cc:cc_ops",
#"//tensorflow/core:framework_internal",
#"//tensorflow/core:tensorflow",
"@opencv//:opencv"
],
但是,如果我仍然保留评论/未注册的代码,并且还将TensorFlow依赖保持我的网络摄像头悬挂在videocapture :: read()
默认情况下,OPENCV使用FFMPEG编解码器,我尝试启用和禁用FFMPEG。有人可以帮助我,为什么在项目中编译了TensorFlow库会使我的OpenCV读()悬挂?
您上面链接的OpenCV Bazel构建配置似乎只是CMAKE构建的所有.So文件。也许您需要将-dwith_ffmpeg = off cflag传递给cmake?如果您像上述一样将其传递给Bazel,则仅适用于Main.cc.
相关文章:
- OpenCV 4.1.2 - 从网络摄像头获取帧并将其拆分
- 使用OpenCV和覆盆子上的多个网络摄像头拍摄延时摄影,出现多个V4L错误
- 使用源读取器从网络摄像头源获取 H264 样本
- 为什么我不能让 3 个网络摄像头与 pthreads 并行运行?
- 从 OpenCV 3 切换到 OpenCV 4 会导致网络摄像头以最大 5 fps 的速度录制,而不是通常的 30 f
- 媒体基金会可以允许多个客户端同时访问单个网络摄像头设备吗?
- 从C++调用网络摄像头并在 Python 中显示图像
- 从 WinPE 下的网络摄像头捕获?
- OpenCV没有显示来自Macbook网络摄像头的视频
- 使用OpenCV和C++在按键上截取网络摄像头源的屏幕截图
- 我正在尝试在树莓派中连接两个网络摄像头
- 使用 FFmpeg 编码和带有网络摄像头的 UDP
- TensorFlow OpenCV网络摄像头悬挂
- 使用来自视频文件或网络摄像头的 Kinect 面部跟踪
- OpenCV 将剪影与网络摄像头流隔离
- OpenCV-从C/C++中的默认网络摄像头获取图片-GTK问题
- 在 OpenCV 中,设置曝光会导致我的网络摄像头软件无法自动调整曝光
- 无法使用OpenCV从辅助网络摄像头读取VideoCapture中的帧
- 使用Opencv直接从网络摄像头获取灰度图像
- 使用Qt显示来自OpenCV的网络摄像头流