【杂谈opencv】OpenCV中的cvRound()、cvFloor()、 cvCeil()函数讲解

功能:cvRound(), cvFloor(), cvCeil()函数讲解。

函数cvRound,cvFloor,cvCeil 都是用一种舍入的方法将输入浮点数转换成整数:

  • cvRound():返回跟参数最接近的整数值,即四舍五入;
  • cvFloor():返回不大于参数的最大整数值,即向下取整;
  • cvCeil():返回不小于参数的最小整数值,即向上取整;

===== ===== =====分割线 ===== ===== =====

代码演示

//----------------------------------------------------------
//功能:cvRound(), cvFloor(), cvCeil()函数讲解。
//		cvRound():返回跟参数最接近的整数值,即四舍五入;
//		cvFloor():返回不大于参数的最大整数值,即向下取整;
//		cvCeil():返回不小于参数的最小整数值,即向上取整;
//----------------------------------------------------------
#include <opencv2/opencv.hpp>
using namespace std;

int main()
{
	//--------------【正数部分】--------------------------------
	cout << "cvRound(3.7) = " << cvRound(3.7) << endl;
	cout << "cvFloor(3.7) = " << cvFloor(3.7) << endl;
	cout << "cvCeil(3.7) = " << cvCeil(3.7) << endl;
	cout << "--------------------------------" << endl;
	//--------------【负数部分】--------------------------------
	cout << "cvRound(-3.7) = " << cvRound(-3.7) << endl;
	cout << "cvFloor(-3.7) = " << cvFloor(-3.7) << endl;
	cout << "cvCeil(-3.7) = " << cvCeil(-3.7) << endl;
	cout << "--------------------------------" << endl;
	system("pause");
	return 0;
}
=================分割线===============

显示结果


================分割线=====================

程序说明

分别对正数和负数进行了测试:正数为3.7,负数为-3.7。
显示结果如上图,返回的值都是整数。
================END=================

猜你喜欢

转载自blog.csdn.net/sinat_36264666/article/details/78849125