对于 CV_CAP_PROP_FRAME_COUNT,cvGetCaptureProperty 始终返回 0!

2023-11-30

这是 O'Reilly Learning Opencv 的代码片段,

cvNamedWindow("Example3", CV_WINDOW_AUTOSIZE);
g_capture = cvCreateFileCapture(argv[1]);
int frames = (int) cvGetCaptureProperty(g_capture, CV_CAP_PROP_FRAME_COUNT);
if (frames != 0) {
    cvCreateTrackbar("Position", "Example3", &g_slider_postion, frames, onTrackbarSlide);
}

但不幸的是,cvGetCaptureProperty总是返回0。我在Yahoo搜索了opencv组,发现了同样的问题。


哦,我明白了。我在学习 OpenCV 的示例代码中找到了这些代码片段:

/*
OK, you caught us.  Video playback under linux is still just bad.  Part of this is due to FFMPEG, part of this
is due to lack of standards in video files.  But the position slider here will often not work. We tried to at least
find number of frames using the "getAVIFrames" hack below.  Terrible.  But, this file shows something of how to
put a slider up and play with it.  Sorry.
*/
//Hack because sometimes the number of frames in a video is not accessible.
//Probably delete this on Widows
int getAVIFrames(char * fname) {
    char tempSize[4];
    // Trying to open the video file
    ifstream  videoFile( fname , ios::in | ios::binary );
    // Checking the availablity of the file
    if ( !videoFile ) {
      cout << "Couldn’t open the input file " << fname << endl;
      exit( 1 );
    }
    // get the number of frames
    videoFile.seekg( 0x30 , ios::beg );
    videoFile.read( tempSize , 4 );
    int frames = (unsigned char ) tempSize[0] + 0x100*(unsigned char ) tempSize[1] + 0x10000*(unsigned char ) tempSize[2] +    0x1000000*(unsigned char ) tempSize[3];
    videoFile.close(  );
    return frames;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对于 CV_CAP_PROP_FRAME_COUNT,cvGetCaptureProperty 始终返回 0! 的相关文章

  • 多视图几何

    我从相距一定距离的两台相同品牌的相机捕获了两张图像 捕获了相同的场景 我想计算两个相机之间的现实世界旋转和平移 为了实现这一点 我首先提取了两张图像的 SIFT 特征并进行匹配 我现在有基本矩阵也单应性矩阵 然而无法进一步进行 有很多混乱
  • 来自连接到远程机器的相机的 Opencv 流

    我正在用 python 开发一个 wx 应用程序 用于流式传输和显示来自两个不同网络摄像头的视频 这工作正常 但现在我需要在不同的场景中执行此操作 其中两个摄像头连接在通过网络连接的 Windows 上运行的单独计算机中 我的应用程序将在机
  • OpenCV 3 中的 FLANN 错误

    我运行的是 Ubuntu 14 04 我正在尝试使用 openCV 3 运行 FLANN 但出现错误 下面的所有内容都是通过使用 AKAZE 和 ORB 进行尝试的 但代码来自我尝试使用 ORB 的情况 我使用 ORB 来查找描述符和关键点
  • OpenCV 2.3 与 VS 2008 - 鼠标事件

    强制性 我是新手 有一份涉及编程的工作 并且我一边工作一边自学 不用说 作为一名老师 我经常犯彻底的错误 我现在所处的位置 我创建了 Graph 类 它 令人惊讶的是 制作了图表 但现在我想通过单击鼠标来修改图形 但我似乎无法让鼠标处理程序
  • opencv人脸检测示例

    当我在设备上运行应用程序时 应用程序崩溃并显示以下按摩 java lang UnsatisfiedLinkError 无法加载 detector based tracker findLibrary 返回 null 我正在使用 OpenCV
  • iOS 上的 OpenCV - VideoCapture 属性始终返回 1

    我一直在尝试构建一个简单的 OpenCV iOS 应用程序 该应用程序从捆绑包中加载视频并查询其帧数 持续时间等 然后它将尝试从中获取各个帧 不幸的是 当我使用VideoCapture类中 所有属性返回值 1 然后我尝试导航到frame 1
  • 如何使用 colorchecker 在 opencv 中进行颜色校准?

    我有数码相机获取的色彩检查器图像 我如何使用它来使用 opencv 校准图像 按照以下颜色检查器图像操作 您是想问如何进行颜色校准或如何使用 OpenCV 进行校准 为了进行颜色校准 您可以使用校准板的最后一行 灰色调 以下是您应该逐步进行
  • 如何将 Mat (opencv) 转换为 INDArray (DL4J)?

    我希望任何人都可以帮助我解决这个任务 我正在处理一些图像分类并尝试将 OpenCv 3 2 0 和 DL4J 结合起来 我知道DL4J也包含Opencv 但我认为它没什么用 谁能帮我 如何转换成 INDArray 我尝试阅读一些问题here
  • 二值图像中骨架上两点之间的最短路径

    我有一个二进制图像 其中包含图像的一个像素宽度骨架 您可能基本上知道 在这个二值图像中 我在骨架上有 1 在其他地方有 0 如何找到骨架上两个非零元素之间的最短距离 路径也应该在骨架本身上 我想使用 A star 算法的 C 实现 我找到了
  • 如何在 cv2.VideoWriter 中使用 FPS 参数?

    好的 所以我正在制作视频 我想确切地知道如何使用 FPS 参数 它是一个浮点数 所以我假设这是我想要的每帧之间的间隔 你能给个例子吗 我只想知道视频会如何随着 FPS 参数值的变化而变化 因为我制作的视频现在太快了 谢谢 确实只是这样 fr
  • 在 Visual Studio C++ 2008 中包含 dll

    有没有办法将 dll 包含在项目中 这样我就不必在编译后将这些 dll 与可执行文件放在同一文件夹中 这样我就可以用它们编译我的项目 这是否有可能 如果是 有人可以指导我 我的项目是一个 opencv 项目 有很多 dll 我必须包含在文件
  • OpenCV SIFT 描述符关键点半径

    我正在深入研究OpenCV的SIFT描述符提取的实现 https github com Itseez opencv blob master modules nonfree src sift cpp 我发现了一些令人费解的代码来获取兴趣点邻域
  • VideoCapture.read() 返回过去的图像

    我在跑python3 6 with openCV on the Raspberry pi OS is Raspbian 代码的大致结构如下 The image以时间间隔 3 5 分钟 捕获 被捕获image在函数中处理并返回度量 精度的种类
  • OpenCv读/写视频色差

    我试图简单地使用 openCV 打开视频 处理帧并将处理后的帧写入新的视频文件 我的问题是 即使我根本不处理帧 只是打开视频 使用 VideoCapture 读取帧并使用 VideoWriter 将它们写入新文件 输出文件看起来比输入更 绿
  • 将 OpenCV Mat 转换为数组(可能是 NSArray)

    我的 C C 技能很生疏 OpenCV 的文档也相当晦涩难懂 有没有办法获得cv Mat data属性转换为数组 NSArray 我想将其序列化为 JSON 我知道我可以使用 FileStorage 实用程序转换为 YAML XML 但这不
  • 如何使用 AdaBoost 进行特征选择?

    我想使用 AdaBoost 从大量 100k 中选择一组好的特征 AdaBoost 的工作原理是迭代功能集并根据功能的执行情况添加功能 它选择对现有特征集错误分类的样本表现良好的特征 我目前正在 Open CV 中使用CvBoost 我得到
  • 如何加速 svm.predict?

    我正在编写一个滑动窗口来提取特征并将其输入到 CvSVM 的预测函数中 然而 我偶然发现 svm predict 函数相对较慢 基本上 窗口以固定的步幅长度在图像比例上滑动穿过图像 遍历图像加上提取每个图像特征的速度 窗口大约需要 1000
  • 找到 4 个特定的角像素并将它们与扭曲透视一起使用

    我正在使用 OpenCV 我想知道如何构建一个简单版本的透视变换程序 我有一张平行四边形的图像 它的每个角都由具有特定颜色的像素组成 该像素在图像中没有其他位置 我想遍历所有像素并找到这 4 个像素 然后我想将它们用作新图像中的角点 以扭曲
  • 如何检测图像是否像素化

    之前有人在 SO 上提出过这样的问题 在Python中检测像素化图像 https stackoverflow com questions 12942365 detecting a pixelated image in python还有关于q
  • opencv中如何去除二值图像噪声?

    将图像转换为二值图像 黑白 后如果有任何噪音怎么办 我消除了那些不需要的噪音 您可以看到下图的黑色区域内有一些白噪声 我该如何去除噪声 使用opencv http img857 imageshack us img857 999 blackn

随机推荐

  • 从实体框架实体获取列数据类型

    使用实体框架 5 首先使用数据库 是否可以 在运行时 获取实体属性所代表的数据库列的数据类型 如果更容易的话 net 类型也可以正常工作 IEnumerable
  • android渲染使用CPU而不是GPU?

    很奇怪的是 在 systrace 工具中 当我看到 SurfaceFlinger 执行绘图命令和窗口合成时 它是在 CPU 上运行的 而不是在 GPU 上运行的 但根据 Romain Guy 的 google 演讲 他们表示绘图命令的组合和
  • PHP 致命错误:使用 laravel4 找不到类“PDO”

    一小时后尝试解决这个问题我失败了 我的错误消息是 Generating autoload files PHP Fatal error Class PDO not found in usr share nginx html laravel a
  • C 函数局部变量的作用域

    当我开始用 C 语言编程时 我就听说过以下场景 尝试从外部访问函数局部变量将导致错误 或垃圾值 由于当我们从函数返回时堆栈被清除 但我的下面的代码示例打印的值为 50 我正在使用最新的 GCC 编译器编译代码 include
  • 如何根据下面的示例从 SQL Server 检索数据?

    实际上我在这里发布了与此相关的类似问题如何按照下面的要求从 SQL Server 检索数据 现在我需要对此进行一些更改 因此请在提出建议之前查看此内容 我有一张这样的桌子 CustName Country RecordedTime Alex
  • 使用 Scala 符号文字会导致 NoSuchMethod

    我最近开始使用 Scala 我在其中编写了一个 DSL 可用于描述中的处理管道medici 在我的 DSL 中 我使用符号来表示锚点 它可用于在管道中放置叉子 或 T 恤 如果您愿意 这是一个正确运行的小示例程序 object Test e
  • Rails 4 表单:基于单选按钮选择条件显示字段

    首先 如果这个问题很愚蠢 请原谅我 我刚刚开始了解 Rails Javascript 和 jQuery 对我来说是一个全新的世界 我发现了以下类似的问题 但根本不明白它们如何适用于我的情况 如果选中复选框则显示 隐藏 div 根据所选的单选
  • 合并 d3 中的转换

    如何在不中断第一个转换的情况下将第二个转换添加到 D3 中正在进行的转换 我创建了一个jsbin来说明问题 在示例中 一个按钮触发一个转换以增加矩形的宽度 另一个按钮触发一个转换以将其填充变为红色 function changeFill d
  • getenv() 如何是线程安全的?

    我想使用getenv 功能 现在我收到某人的评论 如果多个线程调用这个函数 这将不是线程安全的 但是如果我看看信息页对于这个函数 它指出 只要环境保持不变 并发调用该函数是安全的 我理解静态数据块的概念 并且该函数返回指向它的指针 据我了解
  • 在sqlite3中用REGEXP替换字符串的一部分

    我安装了 REGEX 支持 apt get install sqlite3 sqlite3 pcre 现在我可以在 bash 控制台上的查询中使用 REGEX 例如 DB somedb db REGEX EXTENSION SELECT l
  • 为什么这段文本没有出现在 JSF 中?

    我有以下 HTML 文件 Hello
  • Inno Setup Windows DLL 函数调用,带有指向结构的指针

    我正在尝试使用 Inno Setup 的 Pascal 脚本语言来设置服务的失败操作 我收到经典 地址访问冲突 错误 似乎这是不可能的 因为该语言不支持指针 有任何想法吗 这是代码片段 type TScAction record aType
  • 执行存储为字符串的 JavaScript 代码

    如何执行一些字符串形式的 JavaScript function ExecuteJavascriptString var s alert hello how do I get a browser to alert hello 随着eval函
  • Android Instant App 未正确安装(行为与普通应用程序相同)

    我正在尝试使用以下步骤向移动设备启动即时应用程序 在 Android Studio 中生成 Instant App 的签名 apk 这将生成一个包含 Base apk 文件和 feature apk 文件的 zip 文件 解压生成的文件 使
  • 如何在使用 symfony2(和 fosUserBundle)登录时动态添加用户角色?

    在我的应用程序中 用户可以随着时间的推移在免费用户和高级用户之间切换 当他们的订阅到期时 他们不再拥有高级权限 我想我可以走捷径 不将高级用户角色存储在数据库中 只存储他们付款的日期 从而消除了添加或删除用户的高级角色的 cron 作业的需
  • 是否可以在 Fortran 2003 的类型中实现“抽象”变量?

    我想写一个抽象类型 type abstract Vehicle real dimension allocatable Wheels contains procedure Compute Weight deferred VehicleWeig
  • 如何让 ServiceStack 序列化/反序列化具有正确类型的 Expando 对象

    只是想弄清楚 servicestack text 支持将 Expando 对象序列化到 json 或从 json 序列化的情况如何 我知道 Expando 对象实现了 IDictionary 当我序列化到 json 或从 json 序列化时
  • Rails:表单确认消息以及提交表单中的数据

    尝试为 Rails 表单制作自定义 confirm 消息 该消息从提交的表单返回数据 而不仅仅是静态字符串 这个想法是 如果用户在柱数文本字段中输入数字 3 确认消息将显示如下 您真的确定要使用 3 个柱吗 有什么想法如何做到这一点 尝试这
  • 防止AlertView自动旋转

    我的应用程序的启动页面设置为portrait仅用这一点代码 NSUInteger supportedInterfaceOrientations return UIInterfaceOrientationMaskPortrait 当应用程序启
  • 对于 CV_CAP_PROP_FRAME_COUNT,cvGetCaptureProperty 始终返回 0!

    这是 O Reilly Learning Opencv 的代码片段 cvNamedWindow Example3 CV WINDOW AUTOSIZE g capture cvCreateFileCapture argv 1 int fra