使用opencv计算图片上任意一点到图片中心点距离为半径绘制圆形,计算FOV

这篇具有很好参考价值的文章主要介绍了使用opencv计算图片上任意一点到图片中心点距离为半径绘制圆形,计算FOV。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、计算公式
图片坐标:Point(x,y)
半径 :r = ( x − i m a g e . c o l s / 2 ) 2 + ( y − i m a g e . r o w s / 2 ) 2 \sqrt {(x - image.cols/2)^2 + (y - image.rows/2)^2} (ximage.cols/2)2+(yimage.rows/2)2
使用opencv计算图片上任意一点到图片中心点距离为半径绘制圆形,计算FOV,Qt,opencv,opencv,人工智能,qt
二、以 R R R 为半径在图像上绘制圆形,如下图所示:
使用opencv计算图片上任意一点到图片中心点距离为半径绘制圆形,计算FOV,Qt,opencv,opencv,人工智能,qt
三、实现代码文章来源地址https://www.toymoban.com/news/detail-795013.html

	cv::Mat image = cv::imread("D:\\Ttest\\test2\\1.bmp");
	int nRadius = std::sqrt(std::pow((x - (image.cols / 2)), 2) + std::pow((y - (image.rows / 2)), 2));
	cv::Point centerPoint = cv::Point(image.cols / 2, image.rows / 2);	//中心点坐标
	cv::Scalar color = cv::Scalar(15, 185, 255);//设置绘制圆形部分为颜色
	cv::circle(image, centerPoint, nRadius, color, -1);

	//计算黄色区域像素点
	int nCount = 0;
	for (int y = 0; y < image.rows; y++)
	{
		for (int x = 0; x < image.cols; x++)
		{
			Vec3b pixel = image.at<Vec3b>(y, x);
			int B = pixel[0];
			int G = pixel[1];
			int R = pixel[2];
			if ((B == 15) && (G == 185) && (R == 255))
			{
				nCount++;
			}
		}
	}
	std::cout << nCount << "\n";

	float fov = (nCount*1.0) / ((image.rows * image.cols) * 1.0);
	std::cout << fov;

到了这里,关于使用opencv计算图片上任意一点到图片中心点距离为半径绘制圆形,计算FOV的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PCL圆柱中心轴线提取、中心点提取

    适用于 圆柱中心轴线计算,轴线的端点、中心点计算 附代码完整实现及测试代码。 相关链接: C++ PCL点云圆柱结构提取/立杆结构提取

    2024年02月14日
    浏览(50)
  • Unity将模型的世界坐标下的中心点归到模型中心

    效果对比: 调整前: 调整后: 需求:由于建模时的疏忽或者网上找的一些测试模型不规范,会出现导入unity中,模型的世界坐标下的中心点与模型实际的位置差出很多。 注意:物体中心点和父物体中心点的设置代码隐忍而异,看模型结构需求 注意:这里模型的位置必须Re

    2024年02月03日
    浏览(53)
  • 直线围绕中心点旋转(类似时钟)

    2024年04月09日
    浏览(55)
  • unity 获取复杂物体(模型)中心点

    2024年02月02日
    浏览(52)
  • Android双指缩放ScaleGestureDetector检测放大因子大图移动到双指中心点ImageView区域中心,Kotlin

      在 Android双击图片放大移动图中双击点到ImageView区域中心,Kotlin-CSDN博客 基础上,这次使用ScaleGestureDetector检测两根手指的缩放动作,记录两根手指的中心点位置,根据ScaleGestureDetector检测到的缩放因子(系数),放大原图,并移动放大前两根手指中心点在原图的位置移动到

    2024年01月23日
    浏览(55)
  • UE4中修改模型的中心点

    在UE4中的模型中心点一般都在模型的中点,如果是门这样的模型,我们就不能绕中心点旋转了,不然会觉得很奇怪。但是默认的静态网格体中心点都在物体中心,那我们怎么办?有两种方法: 1.我们就需要移动物体的中心点 2.在三维建模软件中移动模型中心点 下面我们就讨论

    2023年04月08日
    浏览(61)
  • uniapp小程序地图设置中心点位置向上偏移

    图示: id=\\\"map\\\" ref=\\\"map\\\"

    2024年02月11日
    浏览(61)
  • WPF中有中心点的slider滑动条

    想要实现的效果 原生滑动条 需要认识一下滑动条的组成 在原生控件中生成“资源字典”对应的样式 然后在track所在的列进行添砖加瓦 由于track在row=\\\"1\\\"的位置,只需要在这个位置上面添加一个Ellipse和Line Ellipse是来描述固定在滑动条上的中心点的位置 line是来描述Thumb从中心点

    2024年02月08日
    浏览(48)
  • vue canvas拖拽,鼠标中心点缩放,标记点位等

    vue实现canvas画布建立图片,坐标建立,可进行拖拽,鼠标中心点位缩放,标记点位等功能 直接上源码 仅供学习使用

    2024年02月17日
    浏览(48)
  • Unity中如何修改精灵(Sprite)的中心点(Pivot)位置

    在Unity中,精灵(Sprite)是游戏中最常用的图形资源之一。精灵的中心点(Pivot)决定了它的旋转和缩放的中心位置。默认情况下,精灵的中心点位于其包围盒(Bounding Box)的中心。然而,在某些情况下,我们可能需要将精灵的中心点设置为不同的位置,以便更好地适应特定的需求

    2024年02月04日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包