小编Ale*_*der的帖子

OpenCV和网络摄像机 - 或者 - 如何监视邻居?


一点背景; 这个程序最初是为了与USB摄像头配合使用而设计的 - 但是由于摄像机需要的位置和计算机的位置之间的设置,切换到通过网络运行的摄像机更有意义.现在我正在尝试转换程序以实现这一目标,但到目前为止我的努力都遇到了糟糕的结果.我也在OpenCV论坛上问了同样的问题.帮我监视我的邻居!(当然,这是他们的许可!):D


我正在使用:

  • OpenCV v2.4.6.0
  • C++
  • D-Link云相机7100(安装程序是DCS-7010L,根据说明.)

我试图通过OpenCV访问DLink相机的视频源.

我可以通过浏览器的IP地址访问摄像头,没有任何问题.Unfourtunately; 我的计划不太合作.尝试访问摄像机时,程序会给出OpenCV生成的错误:

警告:打开文件时出错(../../modules/highgui/src/cap_ffmpeg_impl.hpp:529)

我尝试的几乎所有事情都会发生这种错误,但不会产生更多问题.

供参考 - 第529行OpenCV的cap_ffmpeg_impl.hpp中的代码如下:

522    bool CvCapture_FFMPEG::open( const char* _filename )
523    {
524        unsigned i;
525        bool valid = false;
526
527        close();
528
529    #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(52, 111, 0)
530        int err = avformat_open_input(&ic, _filename, NULL, NULL);
531    #else
532        int err = av_open_input_file(&ic, _filename, NULL, 0, NULL);
533    #endif
...
616    }
Run Code Online (Sandbox Code Playgroud)

...我不明白我在看什么.它似乎正在寻找ffmpeg版本 - 但我已经在该计算机上安装了最新的ffmpeg,所以这应该不是问题.

根据Sebastian Schmitz的建议,这是我尝试使用的编辑版本:

 1    #include …
Run Code Online (Sandbox Code Playgroud)

c++ camera opencv ffmpeg ip-camera

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

使用 Jackson 将 XML 属性添加到手动构建的节点树

我正在尝试设置代码来创建一个节点树Jackson,然后可以使用它来编写JSONXML. 我已经像这样手动创建了节点树:

XmlMapper nodeMapper = new XmlMapper();

ObjectNode rootNode = nodeMapper.createObjectNode();
ObjectNode currentNode = rootNode.putObject("Examples");
currentNode.put("Puppy", TRUE)
           .put("Apple", 2)
           .put("Jet", "Li");
currentNode = rootNode.putObject("Single");
currentNode.put("One", 1);

String writePath = "C:/users/itsameamario/Documents/basicXMLtest.xml";
nodeMapper.writeValue(new File(writePath), rootNode);
Run Code Online (Sandbox Code Playgroud)

我的 XML 输出是:

<?xml version="1.0"?>
<ObjectNode>
    <Examples>
        <Puppy>true</Puppy>
        <Apple>2</Apple>
        <Jet>Li</Jet>
    </Examples>
    <Single>
        <One>1</One>
    </Single>
</ObjectNode>
Run Code Online (Sandbox Code Playgroud)

但是,对于 XML 的某些部分,我想向其中一个节点添加一个属性,如下所示:

<Examples overlyComplicated="yes">
<!--...-->
</Examples>
Run Code Online (Sandbox Code Playgroud)

我发现的所有包含属性的示例都应用于预先存在的类。我一直无法找到一种将属性添加到手动构建的节点树的方法,如上所述。使用它可行Jackson吗?

java xml serialization jackson jsonnode

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

来自WM_Paint的BeginPaint()函数的内存丢失

我看过这个网站和其他人对类似问题的多个回答,虽然我觉得我已经接近了,但我还是不能完全正确.不过,这可能是一个超级愚蠢的问题.


所以我过去每隔几分钟只调用一次WndProc案例"WM_Paint"(通过InvalidateRect),所以我没有真正注意到泄漏.现在我添加了一些东西,每秒调用它约5次.在那一秒,我的内存使用量跃升约3800k.是的,这引起了注意......这是代码:

LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    switch(msg)
    {
        // Other cases omitted since we skip them due to "case WM_Paint:".
        case WM_PAINT:
            wndProc_Paint(hwnd);
        break;
        // Other cases omitted since we skip them due to "break;".
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)
void wndProc_Paint(HWND hwnd)
{
    g_hbmBoard = ConvertIplImageToHBITMAP(targetBoardImg); //OpenCV command
    BITMAP bm;
    PAINTSTRUCT ps;
    HDC hdc = BeginPaint(hwnd, &ps); // <- Breakpoint here while monitoring mem usage shows this is what is adding ~772k per …
Run Code Online (Sandbox Code Playgroud)

c++ winapi

0
推荐指数
1
解决办法
370
查看次数

标签 统计

c++ ×2

camera ×1

ffmpeg ×1

ip-camera ×1

jackson ×1

java ×1

jsonnode ×1

opencv ×1

serialization ×1

winapi ×1

xml ×1