当前位置: 首页>>代码示例>>C++>>正文


C++ image::channels方法代码示例

本文整理汇总了C++中image::channels方法的典型用法代码示例。如果您正苦于以下问题:C++ image::channels方法的具体用法?C++ image::channels怎么用?C++ image::channels使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在image的用法示例。


在下文中一共展示了image::channels方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: cvCreateImage

typename image<T, D>::create_new median_blur(const image<T, D>& a, int neighbourhood)
{
	IplImage* src = a.ipl();
	IplImage* dst = cvCreateImage(cvGetSize(src),
		image_details::ipl_depth<T>(), int(a.channels()));
	cvSmooth(src, dst, CV_MEDIAN, neighbourhood);
	typename image<T, D>::create_new r(dst);
	cvReleaseImage(&src);
	cvReleaseImage(&dst);
	return r;
}
开发者ID:cpplibivl,项目名称:ivl,代码行数:11,代码来源:image_functions_impl_cv.hpp

示例2: laplace

typename image<T, D>::create_new laplace(const image<T, D>& a,
	int aperture_size)
{
	IplImage* src = a.ipl();
	IplImage* dst = cvCreateImage(cvGetSize(src),
		image_details::ipl_depth<T>(), int(a.channels()));
	cvLaplace(src, dst, aperture_size);
	typename image<T, D>::create_new r(dst);
	cvReleaseImage(&src);
	cvReleaseImage(&dst);
	return r;
}
开发者ID:cpplibivl,项目名称:ivl,代码行数:12,代码来源:image_functions_impl_cv.hpp

示例3: sobel

typename image<T, D>::create_new sobel(const image<T, D>& a,
	int y_order, int x_order, int aperture_size)
{
	IplImage* src = a.ipl();
	IplImage* dst = cvCreateImage(cvGetSize(src),
		image_details::ipl_depth<T>(), (int)a.channels());
	cvSobel(src, dst, x_order, y_order, aperture_size);
	typename image<T, D>::create_new r(dst);
	cvReleaseImage(&src);
	cvReleaseImage(&dst);
	return r;
}
开发者ID:cpplibivl,项目名称:ivl,代码行数:12,代码来源:image_functions_impl_cv.hpp

示例4: resample

typename image<T, D>::create_new resample(const image<T, D>& a, size_t rows, size_t cols,
	interpolation interp)
{
	IplImage* src = a.ipl();
	IplImage* dst = cvCreateImage(
		image_details::cv_size(cols, rows),
		image_details::ipl_depth<T>(), int(a.channels()));
	cvResize(src, dst, image_details::interpolation_map[interp]);
	typename image<T, D>::create_new r(dst);
	cvReleaseImage(&src);
	cvReleaseImage(&dst);
	return r;
}
开发者ID:cpplibivl,项目名称:ivl,代码行数:13,代码来源:image_functions_impl_cv.hpp

示例5: grayscale

typename image<T, D>::create_similar grayscale(const image<T, D>& a)
{
	size_t ch = a.channels();
	CHECK(ch > 1, erange());
	size_t w = a.width();
	size_t h = a.height();
	typename types::promote<T>::type acc;
	typename image<T, D>::create_similar r(h, w, 1, 0);
	for(size_t i = 0; i < h; i++) {
		for(size_t j = 0; j < w; j++) {
			acc = a(i, j, 0);
			for(size_t col = 1; col < ch; col++)
				acc += a(i, j, col);
			acc /= typename types::promote<T>::type(ch);
			r(i, j) = T(acc);
		}
	}
	return r;
}
开发者ID:cpplibivl,项目名称:ivl,代码行数:19,代码来源:image_functions_impl.hpp

示例6: rotate

typename image<T, D>::create_new rotate(const image<T, D>& a, double angle,
	const float_point<2>& center, double scale, interpolation interp,
	warp_method warp_m, color<T, D::Ch> fill_color)
{
	IplImage* src = a.ipl();
	IplImage* dst = cvCreateImage(cvGetSize(src),
		image_details::ipl_depth<T>(), int(a.channels()));
	CvPoint2D32f cvcenter;
	cvcenter.x = center.x;
	cvcenter.y = center.y;
	CvMat* map_matrix = cvCreateMat(2, 3, image_details::cv_type<double>());
	cv2DRotationMatrix(cvcenter, angle, scale, map_matrix );
	cvWarpAffine(src, dst, map_matrix,
		image_details::interpolation_map[interp]+
		image_details::warp_map[warp_m] ,
		image_details::to_cvscalar(fill_color));
	typename image<T, D>::create_new r(dst);
	cvReleaseMat(&map_matrix);
	cvReleaseImage(&src);
	cvReleaseImage(&dst);
	return r;
}
开发者ID:cpplibivl,项目名称:ivl,代码行数:22,代码来源:image_functions_impl_cv.hpp


注:本文中的image::channels方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。