python中cv2.projectPoints的用法

这篇具有很好参考价值的文章主要介绍了python中cv2.projectPoints的用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我们先看一下c++ 中的参数解释

projectpoints,python,开发语言,自动驾驶

第一个输入的点是一个, (N, 3) 维的 三维坐标系中的点, xyz
第二个是旋转向量,
第三个是平移向量.
第四个是相机内参,
第五个是相机的畸变系数, 如果输入是4个时, 就是[k1, k2, p1, p2], 输入5个时就是 [k1, k2, p1, p2, k3], 也可以是更多, [k1, k2, p1, p2, k3, k4, k5, k6]

实战在python里面, 我用lidar的点往图像上投影的时候是这么用的(lidar上的3d框, 即8个点.)

    rotation = lidar2camera_pose[:3, :3]
    translation = lidar2camera_pose[:3, 3]
    dist = np.array(camera_disinfo)
    imagePoints, _ = cv2.projectPoints(lidar_points, rotation, translation, camera_K, dist)
    imagePoints = np.reshape(imagePoints, (8, 2))
    maxrect = cv2.boundingRect(imagePoints.astype(int))

但是这样做无法把相机后面的点给排除掉, 所以可以这样改文章来源地址https://www.toymoban.com/news/detail-739026.html

 lidar_points = np.dot(lidar2camera_pose[:3, :3], lidar_points.T).T + lidar2camera_pose[:3, [3]].reshape(1, 3)
    lidar_points = lidar_points[lidar_points[:, 2]>0]
    if len(lidar_points) < 8:
        return None
    rotation = np.eye(3)
    translation = np.zeros((3, 1))
    dist = np.array(camera_disinfo)
    imagePoints, flag = cv2.projectPoints(lidar_points, rotation, translation, camera_K, dist)
    imagePoints = np.reshape(imagePoints, (8, 2))
    maxrect = cv2.boundingRect(imagePoints.astype(int))

到了这里,关于python中cv2.projectPoints的用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • OpenCV中cv2的常见用法

    使用函数cv2.imread(filepath,flags)读入一副图片 filepath:要读入图片的完整路径 flags:读入图片的标志 cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道 cv2.IMREAD_GRAYSCALE:读入灰度图片 cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道 使用函数cv2.imshow(wname,img)显

    2024年02月10日
    浏览(44)
  • 【OpenCV】图像上绘制文字cv2.putText()函数用法,添加倾斜透明水印

    在OpenCV中,调用cv2.putText()函数可添加文字到指定位置,对于需要在图片中加入文字的场景提供了一种比较直接方便的方式。 注意:OpenCV 不支持显示中文字符,使用 cv2.putText() 时添加的文本字符串不能包含中文字符(包括中文标点符号) 其函数原型如下所示: 上述参数分别

    2024年02月04日
    浏览(63)
  • opencv-python库 cv2 图形绘制 cv2.line()cv2.rectangle()cv2.circle()cv2.ellipse()cv2.polylines()cv2.putText

    cv2.line() 是 OpenCV 中的一个函数,用于在图像上绘制直线。这个函数需要指定图像、线的起点和终点坐标、线的颜色、线的宽度以及线的类型。 下面是 cv2.line() 函数的详细参数说明: 参数解释: 下面是一个使用 cv2.line() 绘制直线的简单示例: 在这个例子中,我们创建了一个

    2024年04月23日
    浏览(51)
  • python模块-CV2

    CV2是OpenCV2(Open Source Computer Vision Library)。它是一个开源的库平台计算机视觉库。可以进行图像处理相关工作。 cv2.imread(filepath,flags): 读入一张图片,flags可选择彩,灰,完整图。 cv2.imshow(name,img): 显示名为name的图像img cv2.waitKey(0):显示图像后等待按键按下 cv2.destroyAllWind

    2024年02月13日
    浏览(51)
  • python安装cv2

    方法一: cmd打开命令行窗口输入 会安装最新版本,一般情况下,与python版本不匹配,所以推荐方法二   方法二: 1、https://pypi.org/project/opencv-python/3.4.5.20/#files 在上述网址中,下载cv2,应注意下载与自己python版本号和电脑位数相对应的版本 2、打开cmd,cd进入opencv的下载目录,

    2024年02月11日
    浏览(42)
  • cv2.polylines、cv2.fillPoly 和 多边形绘制分割结果Python函数(一)

    如果只是想撸代码,直接看下一篇: https://blog.csdn.net/HaoZiHuang/article/details/127027469 先来铺垫几个用到的函数 cv2.polylines 、 cv2.fillPoly 以下内容部分摘自: http://www.juzicode.com/opencv-python-polylines-puttext 先看一下代码吧: cv2.polylines 的参数: 绘制的画板图 绘制的多边形列表 是否闭合

    2024年02月04日
    浏览(60)
  • python的cv2如何安装

    在Python中, cv2 是 OpenCV 库的一个模块,这是一个开源的计算机视觉和机器学习软件库。 cv2 模块包含了超过2500种专门用于处理图像和视频的算法。 你可以通过 Python 的包管理器 pip 来安装 OpenCV。请在你的终端或命令提示符中运行以下命令: 如果你正在使用的是 Jupyter noteboo

    2024年02月10日
    浏览(32)
  • 【简单粗暴】Python导入cv2包

    最近在频繁地配环境,期间需要导入cv2这个包。需要注意的是,虽然我们 编写代码时是import cv2 ,但在导入包时, pip的应该是opencv-python 。 以下是我导入cv2包的两种亲测有用的方法: 1. 使用pip 2. 使用conda 最后简单地谈一下 cv2和OpenCV的关系 :OpenCV是一个用C/C++编写的开源的计

    2024年02月11日
    浏览(37)
  • python cv2导入问题解决过程

    问题描述:在pycharm中利用库安装工具无法导入opencv-python 解决: 1、opencv-python的下载地址 Links for opencv-python (tsinghua.edu.cn) 注意python版本,cp38是python3.8版本,区分win32和win64 2、下载之后,找到python库的电脑位置,将上述安装文件复制在python库中(Libsite-packages) 3、打开pycha

    2024年02月04日
    浏览(41)
  • 解决python3安装完OpenCV后没有cv2.imshow、cv2.imread等函数的问题

    发现cv2中没有函数可用,此时打开cv2所在的文件夹, 找到 cv2.pyd 文件,复制到所用python环境中的site-packages文件夹中 关闭项目工程文件重新打开,就可以调用cv2中的函数了。

    2024年02月03日
    浏览(83)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包