小编use*_*076的帖子

BGR色彩空间

我理解RGB ---值(0-255)红色,(0-255)绿色,(0-255)蓝色形成一种颜色.

究竟什么是BGR色彩空间?

它与RGB色彩空间有何不同?

opencv colors color-space

36
推荐指数
3
解决办法
5万
查看次数

在OpenCV中编写AVI文件

在网上有例子和学习OpenCv,Orielly中给出的代码.

经过多次尝试后,out.avi文件写入0字节.我想知道我哪里出错了.

以下是我用过的代码......

int main(int argc, char* argv[]) {
    CvCapture* input = cvCaptureFromFile(argv[1]);
    IplImage* image = cvRetrieveFrame(input);

    if (!image) {
        printf("Unable to read input");
        return 0;
    }


    CvSize imgSize;
    imgSize.width = image->width;
    imgSize.height = image->height;



    double fps = cvGetCaptureProperty(
            input,
            CV_CAP_PROP_FPS
            );

    CvVideoWriter *writer = cvCreateVideoWriter(
            "out.avi",
            CV_FOURCC('M', 'J', 'P', 'G'),
            fps,
            imgSize
            );


    IplImage* colourImage;
    //Keep processing frames...
    for (;;) {

        //Get a frame from the input video.
        colourImage = cvQueryFrame(input);
        cvWriteFrame(writer, colourImage);

    }

    cvReleaseVideoWriter(&writer);
    cvReleaseCapture(&input);

}
Run Code Online (Sandbox Code Playgroud)

c video opencv avi

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

OpenCv Blob/Contour标签

嗨,我一直在研究这个问题,但却没有很好的解决方案.

我正逐帧阅读视频,并使用背景减法来识别有移动的区域,并使用cvFindContours()来获取移动对象的矩形边界.

假设程序保持简单,那么只有2个人.

这些物体以它们可以重叠的方式移动,以一定的间隔转弯并移开.

我怎样才能正确标记这个人类x 2.

cvFindContour可以以随机方式返回边界.对于Frame1,Frame2,Frame3 ...... FrameN

我最初可以比较矩形边界质心来正确地标记人类.一旦人类重叠并离开,这种方法就会失败.

我试图跟踪原始obj的像素颜色(但是人类非常相似,某些区域有类似的颜色,如手,腿,头发)因此不够好.

我正在考虑使用Image Statistic:

CountNonZero(),SumPixels()Mean()Mean_StdDev()MinMaxLoc()Norm()

唯一地区分这两个对象.我相信这将是一个更好的方法.

opencv blob contour background-subtraction

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

标签 统计

opencv ×3

avi ×1

background-subtraction ×1

blob ×1

c ×1

color-space ×1

colors ×1

contour ×1

video ×1