首页 自己介绍 研究介绍 研究成果 获奖情况 研究报告 我的程序其他成员  


 

CNL method

 

中文说明

1. 本程序是由韩越兴根据文章【Yuexing Han, Hideki Koike, and Masanori Idesawa. Recognizing Objects with Multiple Configurations. Pattern Analysis and Applications, DOI: 10.1007/s10044-012-0277-7, Vol. 17, Issue 1, pp. 195-209, 2014.】中提到的CNL(The controlling number of landmarks)方法编写的。如果你使用此程序的全部或者部分代码,请在你的研究成果中引用上面这篇文章。韩越兴作为第一作者和通讯作者,愿意公开此程序的代码,任何人都可以自由地使用本程序中的任何一部分代码。有任何问题,请你给我发送Email:hanyuexing@gmail.com进行咨询。

2. 本程序是在图像轮廓上提取特征点,并能够控制特征点的个数。

3. 本程序是在OpenCV2.4.9库函数下完成的,你也可以用其它版本的OpenCV。你可以用Readme目录下的两个Project Property File:opencv249_debug 和opencv249_release去完成你的OpenCV配置,前提是你在你的电脑中已经安装了OpenCV2.4.9。

4.  本程序主要有三个文件分别是CNL_method.h,CNL_method.cpp ,test.cpp。CNL_method.h,CNL_method.cpp可以直接被用到你自己的程序中,test.cpp是用来测试前面两个程序的。
5.  本程序中的一个函数和一个变量非常重要,说明如下:
int CNL::CNL_method(const  cv::Mat binaryImage, const int landmarks_number, const double thhold, const int Contour_retrieval_modes, const int Contour_approximation_methods)
Input:
binaryImage:  a binary image;
landmarks_number: the set number of landmarks on every contour;
thhold: the threshold for the distance between point to lines;
Contour_retrieval_modes: Contour retrieval modes in cv::findContours;
Contour_approximation_methods: Contour approximation methods in cv::findContours;

应用此程序,最终得到的轮廓特征值放入下面这个变量。
CNL::LANDMARKS landmarks;
其中,
typedef struct  LANDMARKS
{
cv::Point** Landmarks;           //Landmarks
int ContNumb;                    //Number of contour points

int*  LandmarksNumb;             //Number of landmarks
}LANDMARKS;

 

 

 

Important notice
1. The program is written by Dr. Yuexing Han based on “ Yuexing Han, Hideki Koike, and Masanori Idesawa. Recognizing Objects with Multiple Configurations. Pattern Analysis and Applications, DOI: 10.1007/s10044-012-0277-7, Vol. 17, Issue 1, pp. 195-209, 2014”. The method is extracted landmarks from all contours, denoted as “CNL”method (The controlling number of landmarks). You can freely use the program for your research and development. When you use the any part code from the program, please cite the paper “Yuexing Han, Hideki Koike, and Masanori Idesawa. Recognizing Objects with Multiple Configurations. Pattern Analysis and Applications, DOI: 10.1007/s10044-012-0277-7, Vol. 17, Issue 1, pp. 195-209, 2014”in yourself paper or another research results.
If you any questions, please tell me by e-mail: hanyuexing@gmail.com

2. The program is used to extracted landmarks from contours and it can control the number of the landmarks.

3. The program is using OpenCV2.4.9. You also use other ones. You can use two project property files “opencv249_debug”and “opencv249_release”in the fold “Readme”to configure your OpenCV2.4.9.

4. There are three files in the project: “CNL_method.h, CNL_method.cpp, test.cpp”. You can copy “CNL_method.h” and “CNL_method.cpp” in your project.“test.cpp” is used to test the program.

5. The function CNL_method and the variable CNL::LANDMARKS landmarks are very important.
int CNL::CNL_method(const  cv::Mat binaryImage, const int landmarks_number, const double thhold, const int Contour_retrieval_modes, const int Contour_approximation_methods)
Input:
binaryImage:  a binary image;
landmarks_number: the set number of landmarks on every contour;
thhold: the threshold for the distance between point to lines;
Contour_retrieval_modes: Contour retrieval modes in cv::findContours;
Contour_approximation_methods: Contour approximation methods in cv::findContours;

All landmarks are copied into the variable CNL::LANDMARKS landmarks, where
CNL::LANDMARKS landmarks;
其中,
typedef struct  LANDMARKS
{
cv::Point** Landmarks;           //Landmarks
int ContNumb;                    //Number of contour points

int*  LandmarksNumb;             //Number of landmarks
}LANDMARKS;

 

Download