aihot  2017-04-27 21:18:46  OpenCV |   查看评论   
if (rad <= 1)  
  •                     col = 1 - rad * (1 - col); // increase saturation with radius  
  •                 else  
  •                     col *= .75; // out of range  
  •                 data[2 - b] = (int)(255.0 * col);  
  •             }  
  •         }  
  •     }  
  • }  
  •   
  • int main(intchar**)  
  • {  
  •     VideoCapture cap;  
  •     cap.open(0);  
  •     //cap.open("test_02.wmv");  
  •   
  •     if( !cap.isOpened() )  
  •         return -1;  
  •   
  •     Mat prevgray, gray, flow, cflow, frame;  
  •     namedWindow("flow", 1);  
  •   
  •     Mat motion2color;  
  •   
  •     for(;;)  
  •     {  
  •         double t = (double)cvGetTickCount();  
  •   
  •         cap >> frame;  
  •         cvtColor(frame, gray, CV_BGR2GRAY);  
  •         imshow("original", frame);  
  •   
  •         if( prevgray.data )  
  •         {  
  •             calcOpticalFlowFarneback(prevgray, gray, flow, 0.5, 3, 15, 3, 5, 1.2, 0);  
  •             motionToColor(flow, motion2color);  
  •             imshow("flow", motion2color);  
  •         }  
  •         if(waitKey(10)>=0)  
  •             break;  
  •         std::swap(prevgray, gray);  
  •   
  •         t = (double)cvGetTickCount() - t;  
  •         cout << "cost time: " << t / ((double)cvGetTickFrequency()*1000.) << endl;  
  •     }  
  •     
  •  

    除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自流Optical Flow介绍与OpenCV实现

    留言与评论(共有 0 条评论)
       
    验证码:
    [lianlun]1[/lianlun]