8.4.2.31. motion
(packages/opencv/motion.lsh)


dummy function that adds OpenCV C header files in C file

8.4.2.31.0. (cvUpdateMotionHistory sil mhi ts dur)
(packages/opencv/motion.lsh)


 /*F///////////////////////////////////////////////////////////////////////////////////////
 //    Name:    cvUpdateMotionHistory
 //    Purpose: updates motion history image.
 //    Context:
 //    Parameters:
 //        silhouette  - silhouette image
 //        mhi         - motion history image
 //        timestamp   - current system time
 //        mhiDuration - maximal duration of motion track before it will be removed
 //    Returns:
 //    Notes:
 //      Motion history image is changed by the following algorithm:
 //         for every point(x,y) in the mhi do
 //             if( silhouette(x,y) != 0 )
 //             {
 //                 mhi(x,y) = timestamp;
 //             }
 //             else if( mhi(x,y) < timestamp - mhi_duration )
 //             {
 //                 mhi(x,y) = 0;
 //             }
 //             // else mhi(x,y) remains unchanged
 //F*/
 OPENCVAPI  void    cvUpdateMotionHistory( const CvArr* silhouette, CvArr* mhi,
                                           double timestamp, double mhiDuration );


8.4.2.31.1. (cvCalcMotionGradient mhi mask ori maxtd mintd as)
(packages/opencv/motion.lsh)


 /*F///////////////////////////////////////////////////////////////////////////////////////
 //    Name:    cvCalcMotionGradient
 //    Purpose: calculates motion gradient and mask where it is valid
 //    Context:
 //    Parameters:
 //       mhi         - motion history image
 //       mask        -(output image) indicates where <orientation> data is valid
 //       orientation -(output image) contains gradient orientation in degrees
 //       aperture_size - size of the filters for x & y derivatives
 //
 //       maxTDelta   - gradient bounds.
 //       minTDelta   _/
 //    Returns:
 //    Notes:
 //      Function handles both top-left and bottom-left origins of orientation image
 //F*/
 OPENCVAPI  void    cvCalcMotionGradient( const CvArr* mhi, CvArr* mask, CvArr* orientation,
                                          double maxTDelta, double minTDelta,
                                          int aperture_size CV_DEFAULT(3));


8.4.2.31.2. (cvCalcGlobalOrientation ori mask mhi ts dur)
(packages/opencv/motion.lsh)


 /*F///////////////////////////////////////////////////////////////////////////////////////
 //    Name:    cvCalcGlobalOrientation
 //    Purpose: calculates general motion direction in the selected region.
 //    Context:
 //    Parameters:
 //         orient       - orientation image
 //         mask         - region mask
 //         mhi          - motion history image
 //         timestamp    - the last timestamp when mhi was updated
 //         mhi_duration - maximal motion track duration.
 //    Returns:
 //      direction of selected region in degrees
 //F*/
 OPENCVAPI  double  cvCalcGlobalOrientation( const CvArr* orientation, const CvArr* mask,
                                             const CvArr* mhi, double curr_mhi_timestamp,
                                             double mhi_duration );


8.4.2.31.3. (cvSegmentMotion mhi segmask stor ts segthresh)
(packages/opencv/motion.lsh)


 /*F///////////////////////////////////////////////////////////////////////////////////////
 //    Name:    cvSegmentMotion
 //    Purpose: splits motion history image into several regions that
 //             move in different directions.
 //    Context:
 //    Parameters:
 //        mhi        - motion history image
 //        seg_mask   - segmentation mask image. It is marked with different values
 //                    (1,2,3...) for every motion component
 //        storage    - where to store motion components
 //        timestamp  - the last timestamp when mhi was updated
 //        seg_thresh - threshold, which is used to split motion components(regions)
 //                     the bigger threshold, the coarse segmentation is.
 //    Returns:
 //      sequence of connected components
 //    Notes:
 //F*/
 OPENCVAPI  CvSeq*  cvSegmentMotion( CvArr* mhi, CvArr* seg_mask,
                                     CvMemStorage* storage,
                                     double timestamp, double seg_thresh );