Home | History | Annotate | Download | only in src

Lines Matching full:points

55 /* Create feature points on image and return number of them. Array points fills by found points */
56 int icvCreateFeaturePoints(IplImage *image, CvMat *points, CvMat *status)
68 if( image == 0 || points == 0 )
84 if( !CV_IS_MAT(points) )
86 CV_ERROR( CV_StsUnsupportedFormat, "Input parameter points must be a matrix" );
90 needNumPoints = points->cols;
93 CV_ERROR( CV_StsOutOfRange, "Number of need points must be > 0" );
96 if( points->rows != 2 )
111 CV_ERROR( CV_StsUnmatchedSizes, "Size of points and statuses must be the same" );
125 /* Create points */
139 /* Copy found points to result */
143 cvmSet(points,0,i,cornerPoints[i].x);
144 cvmSet(points,1,i,cornerPoints[i].y);
177 /* Returns number of corresponding points */
184 int useFilter,/*Use fundamental matrix to filter points */
185 double threshold)/* Threshold for good points in filter */
232 CV_ERROR( CV_StsUnsupportedFormat, "Input parameters (points and status) must be a matrices" );
241 /* Test number of points */
252 CV_ERROR( CV_StsUnmatchedSizes, "Number of points and statuses must be the same" );
257 CV_ERROR( CV_StsOutOfRange, "Number of points coordinates must be 2" );
267 /* Compute number of visible points on image1 */
316 /* Copy points good points from input data */
346 /* Copy new points and set status */
365 /* Filter points using RANSAC */
369 /* Use RANSAC filter for found points */
372 /* Create array with good points only */
376 /* Copy just good points */
441 /* Add to existing points and status arrays new points or just grow */
474 CV_ERROR( CV_StsOutOfRange, "Number of old points must be > 0" );
477 /* Define if need number of add points */
481 {/* We have aditional points */
487 CV_ERROR( CV_StsOutOfRange, "Number of add points and statuses must be the same" );
521 /* Copy additional points and statuses */
550 int icvRemoveDoublePoins( CvMat *oldPoints,/* Points on prev image */
551 CvMat *newPoints,/* New points */
552 CvMat *oldStatus,/* Status for old points */
555 float threshold)/* Status for new points */
576 CV_ERROR( CV_StsUnsupportedFormat, "Input parameters points must be a matrices" );
593 CV_ERROR( CV_StsUnmatchedSizes, "Number of old Points and old Statuses must be the same" );
605 CV_ERROR( CV_StsUnmatchedSizes, "Number of new Points and new Statuses must be the same" );
610 CV_ERROR( CV_StsUnmatchedSizes, "Number of new Points and new original Status must be the same" );
628 /* we have points on image and wants add new points */
629 /* use subdivision for find nearest points */
692 /* Add just exist points */
705 /* Find nearest points */
711 /* Test just exist points */
761 /* Compute number of good points */
825 we have corresponding points on N images
827 reconstructed 4D points
837 CvMat *oldPoints,// previous 2D points on prev image (some points may be not visible)
839 CvMat *objPoints4D,//prev 4D points
840 CvMat *newPoints, //Points on new image corr for prev
842 CvMat *newFPoints2D1,//new feature points on prev image
843 CvMat *newFPoints2D2,//new feature points on new image
856 /* First found correspondence points for images */
876 useFilter,/*Use fundamental matrix to filter points */
877 threshold);/* Threshold for good points in filter */
892 /* Create new points and find correspondence */
895 /* Good if we test new points before find corr points */
897 /* Find correspondence for new found points */
904 useFilter,/*Use fundamental matrix to filter points */
905 threshold);/* Threshold for good points in filter */
907 /* We generated new points on image test for exist points */
909 /* Remove all new double points */
913 origNum = icvRemoveDoublePoins( oldPoints,/* Points on prev image */
914 newFPoints2D1,/* New points */
915 oldPntStatus,/* Status for old points */
918 20);/* Status for new points */
920 /* Find double points on new image */
921 origNum = icvRemoveDoublePoins( newPoints,/* Points on prev image */
922 newFPoints2D2,/* New points */
923 newPntStatus,/* Status for old points */
926 20);/* Status for new points */
930 /* Add all new good points to result */
953 CvMat **points,
957 /* Delete points which no exist on any of images */
959 /* points - arrays of points for each image. Changing */
961 /* Function returns number of common points */
973 if( points == 0 || status == 0 )
979 numPoints = points[0]->cols;
983 numCoord = points[0]->rows;// !!! may be number of coordinates is not correct !!!
1006 /* Copy points and status */
1011 /* Copy points */
1014 cvmSet(points[currImage],currCoord,currExistPoint, cvmGet(points[currImage],currCoord,i) );
1031 /* Rest of final status of points must be set to 0 */
1048 void icvGrowPointsArray(CvMat **points)
1068 /* Add image to existing images and corr points */
1071 /* 0 image was not added. Not enought corr points */
1074 CvMat *oldPoints,// previous 2D points on prev image (some points may be not visible)
1076 CvMat *objPoints4D,//prev 4D points
1078 CvMat *newPoints,//New corresponding points on new image
1079 CvMat *newPoints2D1,//new points on prev image
1080 CvMat *newPoints2D2,//new points on new image
1084 /* Add new image. Create new corr points */
1085 /* Track exist points from oldImage to newImage */
1095 /* Status has new status of points */
1101 /* If number of corr points is 6 or more can compute projection matrix */
1104 /* Compute projection matrix for new image using corresponding points */
1108 /* Create new points and find correspondence */
1116 /* Set status for all points */
1125 /* !!! Filter points using projection matrices or not ??? */
1127 /* !!! Need to filter nearest points */
1129 /* Add new found points to exist points and optimize again */
1142 /* No new points were found */