小编Ara*_*ras的帖子

在OpenCV应用程序中,如何识别内存泄漏源并进行修复?

我的OpenCV应用程序中有内存泄漏.它是一个中等大小的应用程序,具有类的dozon和几千行代码.不知何故,我设法在我的应用程序中产生了大量的内存泄漏,它在几分钟内就耗尽了我所有的8GB内存.我在使用CMake的Ubuntu 11.10上使用OpenCV C++ 2.3.

我终止应用程序后立即释放了多少内存的快照. 我可以在几分钟内看到用过的内存高达4gig

它是一个手动跟踪应用程序,它以每帧15fps的帧速率同时处理两个视频流.

我尝试使用valgrind,如下所示,但valgrind的输出是如此巨大,以至于超出了文本shell可以保留在缓冲区中的数量.我知道我可以将输出保存到日志文件中,但我希望避免阅读所有内容的艰巨任务.这是我使用的valgrind命令:

valgrind --tool=memcheck --leak-check=full --show-reachable=yes ./Gibbon 
Run Code Online (Sandbox Code Playgroud)

这是valgrind输出的最后几行:

==3573== 5,415,576 (1,176 direct, 5,414,400 indirect) bytes in 7 blocks are definitely lost in loss record 2,571 of 2,571
==3573==    at 0x4C28F9F: malloc (vg_replace_malloc.c:236)
==3573==    by 0x5B2ACD0: cv::fastMalloc(unsigned long) (in /usr/local/lib/libopencv_core.so.2.3.1)
==3573==    by 0x5A7FA9D: cvCreateImageHeader (in /usr/local/lib/libopencv_core.so.2.3.1)
==3573==    by 0x484538: CameraPGR::convertImageToOpenCV(FlyCapture2::Image*) (CameraPGR.cpp:212)
==3573==    by 0x483F52: CameraPGR::grabImage() (CameraPGR.cpp:134)
==3573==    by 0x473F86: start() (GibbonMain.cpp:368)
==3573==    by 0x4725CC: main (GibbonMain.cpp:108)
==3573== 
==3573== LEAK SUMMARY:
==3573==    definitely lost: 24,432 bytes in 33 …
Run Code Online (Sandbox Code Playgroud)

c++ opencv memory-leaks

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

如何使用父ID将对象添加到嵌套的javascript对象

在我的应用程序中,我基于来自服务器的JSON响应创建一个JavaScript对象,类似于:

{
  name: "root",
  id: 1,
  children: [
    {
      name: "child one",
      id: 11,
      children: [
       {name: "grand child 1", id: 111, children: []},
       {name: "grand child 2", id: 112, children: []}
      ]
   },
   {
     name: "child two",
     id: 12,
     children: []
   }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我创建了一个新节点,例如:

 {name: "grandchild three", id: 113, children:[]}
Run Code Online (Sandbox Code Playgroud)

考虑到这一点,我如何将这个新孙子添加到id为11的父母?请注意,我不知道节点的静态路径,id == 11因此我想知道如何只知道它就可以获得该节点id.

编辑:请注意真实案例中的id不要编码对象的路径.我创建了这个简单的例子来演示我正在处理的数据结构.但我无法在我的实际应用程序中使用其id检索对象的路径.

javascript rest json

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

如何在qml中的ListModel中找到特定的ListElement?

Qt QML具有一个ListModel,可用于表示列表数据。它提供了许多将元素添加到列表中的方法,但是我可以找到的用于检索元素的唯一方法是get()需要索引的方法。

我要检查ListModel是否包含特定元素,该怎么办?有没有一种方法可以使用键和值来接收ListElement对象?

例如,考虑以下列表:

ListModel {
    id: fruitModel

    ListElement {
        name: "Apple"
        cost: 2.45
    }
    ListElement {
        name: "Orange"
        cost: 3.25
    }
    ListElement {
        name: "Banana"
        cost: 1.95
    }
}
Run Code Online (Sandbox Code Playgroud)

是否存在诸如fruitModel.get({name:“ Banana”})之类的方法来查找名称为“ Banana”的元素并返回它们?

qt qml

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

你如何从opencv 2.2中的文件中读取内在和失真矩阵

我已经为我的相机制作了"instinsic.xml"和"distortion.xml".现在我正在使用OpenCV 2.2接口编写程序,因此我主要使用cv :: Mat数据结构而不是CvMat.我想将这两个文件加载到相应的cv :: Mat结构中.使用以前的OpenCV API,我会写:

CvMat* intrinsic = (CvMat*) cvLoad("Intrinsics.xml");
CvMat* distortion = (CvMat*) cvLoad("Distortions.xml");
Run Code Online (Sandbox Code Playgroud)

如何在OpenCV 2.2中实现这一目标?是否有一个函数可以将xml文件加载到cv :: Mat中?我查看了所有API文档,但找不到它.

谢谢,

c++ opencv distortion

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

我是否必须为每个Ember.js应用程序显式创建`ApplicationView`和`ApplicationController`?

Trek的教程:

您的应用程序必须具有ApplicationView属性.将为您创建此类的实例,并将其作为根视图插入到应用程序的视图层次结构中.

本教程给出了这个示例代码:

App.ApplicationView = Ember.View.extend({
  templateName: 'application'
});

App.ApplicationController = Ember.Controller.extend();
Run Code Online (Sandbox Code Playgroud)

有什么特殊的ApplicationViewApplicationController?它们的特定名称是保留的,必须通过转换使用,或者路由器引用它们的方式有什么特别之处吗?

据我了解,Ember的一个原则是消除样板代码.所以我猜测还有更多东西可以为每个应用程序明确创建这两个视图作为起点 - 否则Ember会在幕后为我制作它们.

重温我的问题,Ember应用程序的成就ApplicationViewApplicationController特殊之处.我是否需要为每个应用程序显式创建它们?如果是,我是否需要按照约定命名它们?

注意:我正在使用ember-latest

ember.js

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

如何在类B的另一个元素下选择A类元素?

这是我的代码的简化片段:

<li id="work-5" class="work-5 class-B">
    <div>some other stuff</div>
    <div class="class-A"></div>
</li>
<li id="work-6" class="work-6 class-C">
    <div class="class-A"></div>
</li>
Run Code Online (Sandbox Code Playgroud)

我想将一些CSS样式应用于具有类-A的元素,该类位于具有类-B的元素的树下.换句话说,我想对具有相同类(A类)的两个元素应用不同的样式,这两个元素在具有不同类的两个不同元素的树下的某处(不一定是第一个子元素).我可以使用CSS选择器来实现这一目标吗?

html css

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

标签 统计

c++ ×2

opencv ×2

css ×1

distortion ×1

ember.js ×1

html ×1

javascript ×1

json ×1

memory-leaks ×1

qml ×1

qt ×1

rest ×1