Mercurial > hg > nsaunier > traffic-intelligence
view c/test-pixels.cpp @ 190:36968a63efe1
Got the connected_components to finally work using a vecS for the vertex list in the adjacency list.
In this case, the component map is simply a vector of ints (which is the type of UndirectedGraph::vextex_descriptor (=graph_traits<FeatureGraph>::vertex_descriptor) and probably UndirectedGraph::vertices_size_type).
To use listS, I was told on the Boost mailing list:
>> If you truly need listS, you will need to create a vertex index
>> map, fill it in before you create the property map, and pass it to the
>> vector_property_map constructor (and as a type argument to that class).
It may be feasible with a component map like
shared_array_property_map< graph_traits<FeatureGraph>::vertex_descriptor, property_map<FeatureGraph, vertex_index_t>::const_type > components(num_vertices(g), get(vertex_index, g));
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Wed, 07 Dec 2011 18:51:32 -0500 |
| parents | eb38637f338d |
| children |
line wrap: on
line source
#include "cvutils.hpp" #include "opencv/cv.h" #include "opencv/highgui.h" #include <iostream> using namespace std; int main(int argc, char *argv[]) { //cout << "Hello World" << endl; CvCapture *inputVideo = cvCaptureFromFile(argv[1]); IplImage* frame = cvQueryFrame(inputVideo); IplImage* bwFrame = allocateImage(frame->width, frame->height, IPL_DEPTH_8U, 1); int frameNum = 0; while (frame) { if (frameNum%10 == 0) cout << frameNum << endl; cvConvertImage(frame, bwFrame); for (int i=0; i<frame->height; ++i) for (int j=0; j<frame->width; ++j) int gray = cvGetReal2D(bwFrame, i, j); frame = cvQueryFrame(inputVideo); frameNum++; } return 1; }
