python中cv2.projectPoints的用法小結(jié)
我們先看一下c++ 中的參數(shù)解釋
第一個(gè)輸入的點(diǎn)是一個(gè), (N, 3) 維的 三維坐標(biāo)系中的點(diǎn), xyz
第二個(gè)是旋轉(zhuǎn)向量,
第三個(gè)是平移向量.
第四個(gè)是相機(jī)內(nèi)參,
第五個(gè)是相機(jī)的畸變系數(shù), 如果輸入是4個(gè)時(shí), 就是[k1, k2, p1, p2], 輸入5個(gè)時(shí)就是 [k1, k2, p1, p2, k3], 也可以是更多, [k1, k2, p1, p2, k3, k4, k5, k6]
實(shí)戰(zhàn)在python里面, 我用lidar的點(diǎn)往圖像上投影的時(shí)候是這么用的(lidar上的3d框, 即8個(gè)點(diǎn).)
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))
但是這樣做無法把相機(jī)后面的點(diǎn)給排除掉, 所以可以這樣改
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))
到此這篇關(guān)于python中cv2.projectPoints的用法的文章就介紹到這了,更多相關(guān)python cv2.projectPoints用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python數(shù)據(jù)可視化Pyecharts庫的使用教程
pyecharts是一個(gè)用于生成echarts圖表的類庫。echarts是百度開源的一個(gè)數(shù)據(jù)可視化庫,用echarts生成的圖可視化效果非常棒。使用pyechart庫可以在python中生成echarts數(shù)據(jù)圖。本文將詳細(xì)介紹一下Pyecharts庫的使用,需要的可以參考一下2022-02-02python matplotlib中的subplot函數(shù)使用詳解
今天小編就為大家分享一篇python matplotlib中的subplot函數(shù)使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01使用python list 查找所有匹配元素的位置實(shí)例
今天小編就為大家分享一篇使用python list 查找所有匹配元素的位置實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06numpy中meshgrid和mgrid的區(qū)別和使用詳解
本文主要介紹了numpy中meshgrid和mgrid的區(qū)別和使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02python + winrm 實(shí)現(xiàn)遠(yuǎn)程連接Windows服務(wù)器并執(zhí)行指定命令的操作過程
Windows遠(yuǎn)程管理(WinRM)是Windows Server 2003 R2,Windows Vista和Windows Server 2008中一種新式的方便遠(yuǎn)程管理的服務(wù),這篇文章主要介紹了python + winrm 實(shí)現(xiàn)遠(yuǎn)程連接Windows服務(wù)器并執(zhí)行指定命令的操作過程,需要的朋友可以參考下2023-10-10python中的關(guān)鍵字參數(shù)*args和**kwargs詳解
這篇文章主要介紹了python中的關(guān)鍵字參數(shù)*args和**kwargs詳解,在定義類或函數(shù)時(shí),有時(shí)候會(huì)用到*args和**kwargs,前者叫位置參數(shù),后者叫關(guān)鍵字參數(shù),需要的朋友可以參考下2023-11-11使用Python實(shí)現(xiàn)文本情感分析預(yù)處理的詳細(xì)教程
在自然語言處理(NLP)領(lǐng)域,文本情感分析是一項(xiàng)重要任務(wù),它旨在通過計(jì)算機(jī)技術(shù)識(shí)別和提取文本中的情感傾向(如正面、負(fù)面或中性),為了實(shí)現(xiàn)準(zhǔn)確的情感分析,預(yù)處理步驟至關(guān)重要,所以本文給大家介紹了使用Python實(shí)現(xiàn)文本情感分析預(yù)處理的詳細(xì)教程,需要的朋友可以參考下2025-04-04Pycharm 文件更改目錄后,執(zhí)行路徑未更新的解決方法
今天小編就為大家分享一篇Pycharm 文件更改目錄后,執(zhí)行路徑未更新的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07