国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

單目測距實(shí)戰(zhàn)

這篇具有很好參考價(jià)值的文章主要介紹了單目測距實(shí)戰(zhàn)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

單目測距是通過使用單個(gè)攝像頭捕獲的圖像信息倆估計(jì)物體的距離。這是一種在計(jì)算機(jī)領(lǐng)域廣泛研究的問題,并且困難之處在于從2d圖像中恢復(fù)3d信息。

單目測距常用的或者是實(shí)用方法是相似三角形法。
相似三角形法:假設(shè)有一個(gè)寬度為w的目標(biāo)的或者物體。然后,我們用相機(jī)對物體進(jìn)行拍照并且測距物體的像素寬度p,相機(jī)焦距為f。根據(jù)相似三角形得到目標(biāo)放在距離我們相機(jī)為d的位置
d = f * w/p
單目測距實(shí)戰(zhàn),圖像處理,數(shù)碼相機(jī)

圖像去畸變

圖像去畸變是使用相機(jī)校準(zhǔn)參數(shù)來修改圖像,進(jìn)而消除由于鏡頭的光學(xué)因素和相機(jī)的構(gòu)造因素導(dǎo)致的圖像畸變。
畸變主要有兩種類型:徑向畸變和切向畸變。徑向畸變是由于透鏡的形狀導(dǎo)致光線彎曲的比例變化,使得圖像看起來像在水面下觀察物體。切向畸變則是由于透鏡和成像平面之間的不平行導(dǎo)致的。
單目測距實(shí)戰(zhàn),圖像處理,數(shù)碼相機(jī)
一般情況下,從攝像頭或圖像文件中讀取的原始圖像都包含一定的畸變,取決于具體的攝像頭和鏡頭參數(shù)。因此,直接讀取的圖像是原始的,畸變的。
在進(jìn)行單目測距或者其他涉及準(zhǔn)確的空間量測的計(jì)算機(jī)視覺任務(wù)中,預(yù)處理步驟通常會包括一個(gè)圖像去畸變(undistortion)的步驟。原因是攝像頭的鏡片畸變會扭曲圖像,在圖像上測得的距離可能會因此產(chǎn)生偏差。對圖像進(jìn)行去畸變可以提高測量結(jié)果的準(zhǔn)確性。
因此,進(jìn)行單目測距通常會需要一個(gè)去畸變的步驟。你需要攝像頭的校準(zhǔn)參數(shù)才能正確地去除畸變。在OpenCV中,這通常通過cv::undistort()函數(shù)來進(jìn)行,需要提供攝像頭的內(nèi)參矩陣和畸變系數(shù)。

單目測距代碼

1、基于實(shí)際物體的高度或者寬度的單目測距

單目測距使用的方法大多數(shù)是通過參照物,即已知實(shí)際物體的高度或者寬度來進(jìn)行測距。但是這種方法的缺點(diǎn)必須要已經(jīng)實(shí)際物體的高度或者寬度。

	double calculateDistance(double &objectHeight, double &imageHeight, double &focalLength)
	{
		// 距離 = 相機(jī)的焦距(像素)* 物體的實(shí)際高度(米)/ 物體在圖像上的成像高度(像素) //* 相機(jī)傳感器的單位像素高度(米)
		double distance = (focalLength * objectHeight) / (imageHeight);
		return distance;
	}

2、基于相機(jī)安裝高度的單目測距

相機(jī)

cv::Point3f MonocularRanging(int x0, int y0)
{
	/*
      x1為檢測框左上角x坐標(biāo),x2為檢測框右下角x坐標(biāo),y2為檢測框右下角y坐標(biāo);
      取檢測框底邊中點(diǎn)作為單目測距點(diǎn)輸入。
                y
                |
                |
      x <-------
    */
    //RGB相機(jī)相關(guān)參數(shù)
    float Theta = 97.5 / 2; //水平視場角一半
	float Beta  = 79.4 / 2; //垂直視場角一半
	float Alpha = 10; //10; //相機(jī)安裝仰角
    float Mh    = 46.52;    //相機(jī)安裝高度 前撞:55.2, //相機(jī)安裝高度 機(jī)身:50.5,//紅外回充46.52
    // Opencv
    cv::Mat CameraMatrix = (cv::Mat_<float>(3,3) <<  2.9489061908999292e+02,       0., 3.1866700927076226e+02,
                                                     0., 2.9491166478751404e+02, 2.4225251338364708e+02,
                                                      0.,        0.,        1.);
    cv::Mat DistCoeffs = (cv::Mat_<float>(1,5) << 1.2105428797704496e-02, -1.9610247948251138e-02, 4.2034414972305298e-04, 4.9760569760944572e-04, 0.);

    float Tt = Theta * PI / 180.;
    float Bt = (Beta + pitch)  * PI / 180.;
    float x, y, kx, ky;
    double a, b;
	double py = abs(ky - CameraMatrix.at<float>(1, 2));
    double px = CameraMatrix.at<float>(0, 2) - kx;
    a = atan(tan(Bt) * py / CameraMatrix.at<float>(1, 2)) * 180 / PI;
    //b = (90 - a - Alpha) * PI / 180;//相機(jī)為俯角時(shí)
    b = (a - Alpha) * PI / 180;//相機(jī)為仰角時(shí)
	y = Mh / tan(b);
    y = abs(y);
    x = tan(Tt) * px * hypot(Mh,y) / CameraMatrix.at<float>(0, 2);
    cv::Point3f point;
    point.x = x * 1e-3;
    point.y = y * 1e-3;
    point.z = 0;
    return point;

參考鏈接:
1、https://zhuanlan.zhihu.com/p/642601409文章來源地址http://www.zghlxwxcb.cn/news/detail-824885.html

到了這里,關(guān)于單目測距實(shí)戰(zhàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • python圖像處理實(shí)戰(zhàn)(二)—圖像幾何變換

    python圖像處理實(shí)戰(zhàn)(二)—圖像幾何變換

    ??寫在前面?? ??個(gè)人主頁:https://blog.csdn.net/m0_52051577?type=blog? ??歡迎各位大佬支持點(diǎn)贊收藏,三連必回??! ??本人新開系列專欄—python圖像處理 ?愿每一個(gè)驟雨初晴之時(shí),所有的蜻蜓振翅和雨后驚雷,都?xì)w你。 前言 ? ? ? 圖像幾何變換就是在不改變圖像像素值的前提

    2024年02月09日
    瀏覽(43)
  • python圖像處理實(shí)戰(zhàn)(三)—圖像幾何變換

    python圖像處理實(shí)戰(zhàn)(三)—圖像幾何變換

    ??寫在前面?? ??個(gè)人主頁:https://blog.csdn.net/m0_52051577?type=blog? ??歡迎各位大佬支持點(diǎn)贊收藏,三連必回!! ??本人新開系列專欄—python圖像處理 ?愿每一個(gè)驟雨初晴之時(shí),所有的蜻蜓振翅和雨后驚雷,都?xì)w你。 前言 ? ? ? 圖像幾何變換就是在不改變圖像像素值的前提

    2024年02月11日
    瀏覽(25)
  • Python 基于 OpenCV 視覺圖像處理實(shí)戰(zhàn) 之 OpenCV 簡單實(shí)戰(zhàn)案例 之六 簡單圖像傾斜校正處理效果

    Python 基于 OpenCV 視覺圖像處理實(shí)戰(zhàn) 之 OpenCV 簡單實(shí)戰(zhàn)案例 之六 簡單圖像傾斜校正處理效果

    目錄 Python 基于 OpenCV 視覺圖像處理實(shí)戰(zhàn) 之 OpenCV 簡單實(shí)戰(zhàn)案例 之六 簡單圖像傾斜校正處理效果 一、簡單介紹 二、簡單圖像傾斜校正處理效果實(shí)現(xiàn)原理 三、簡單圖像傾斜校正處理效果案例實(shí)現(xiàn)簡單步驟 四、注意事項(xiàng) Python是一種跨平臺的計(jì)算機(jī)程序設(shè)計(jì)語言。是一種面向?qū)?/p>

    2024年04月13日
    瀏覽(28)
  • 第五章 Opencv圖像處理框架實(shí)戰(zhàn) 5-3 圖像閾值與平滑處理

    第五章 Opencv圖像處理框架實(shí)戰(zhàn) 5-3 圖像閾值與平滑處理

    ret, dst = cv2.threshold(src, thresh, maxval, type) src: 輸入圖,只能輸入單通道圖像,通常來說為灰度圖 dst: 輸出圖 thresh: 閾值 maxval: 當(dāng)像素值超過了閾值(或者小于閾值,根據(jù)type來決定),所賦予的值 type:二值化操作的類型,包含以下5種類型: cv2.THRESH_BINARY; cv2.THRESH_BINARY

    2024年02月14日
    瀏覽(26)
  • python圖像處理實(shí)戰(zhàn)(二)—二值化圖像與線性變換

    python圖像處理實(shí)戰(zhàn)(二)—二值化圖像與線性變換

    ??寫在前面?? ??個(gè)人主頁:https://blog.csdn.net/m0_52051577?type=blog? ??歡迎各位大佬支持點(diǎn)贊收藏,三連必回??! ??本人新開系列專欄—python圖像處理 ?愿每一個(gè)驟雨初晴之時(shí),所有的蜻蜓振翅和雨后驚雷,都?xì)w你。 前言 ????????首先引入以下灰度變換的概念。 ?????

    2024年02月07日
    瀏覽(27)
  • 圖像處理實(shí)戰(zhàn)01-OpenCV 入門指南

    圖像處理實(shí)戰(zhàn)01-OpenCV 入門指南

    OpenCV是一個(gè)強(qiáng)大的計(jì)算機(jī)視覺庫,它可以用于處理圖像和視頻數(shù)據(jù),以及進(jìn)行目標(biāo)檢測和跟蹤等任務(wù)。,將學(xué)會如何使用Python編寫OpenCV代碼來進(jìn)行基礎(chǔ)和進(jìn)階的圖像處理和分析。 學(xué)習(xí)OpenCV可以幫助你掌握基本的圖像處理技術(shù),包括圖像讀取和處理、閾值處理、形態(tài)學(xué)函數(shù)、模

    2024年02月11日
    瀏覽(33)
  • OpenCV實(shí)戰(zhàn)(1)——OpenCV與圖像處理基礎(chǔ)

    OpenCV實(shí)戰(zhàn)(1)——OpenCV與圖像處理基礎(chǔ)

    OpenCV 是一個(gè)的跨平臺計(jì)算機(jī)視覺庫,包含了 500 多個(gè)用于圖像和視頻分析的高效算法。本節(jié)將介紹 OpenCV 的基礎(chǔ)知識,以及如何編譯運(yùn)行 OpenCV 程序,并將學(xué)習(xí)如何完成最基本的圖像處理任務(wù)——讀取、顯示和保存圖像。除此之外,鼠標(biāo)事件和圖形繪制也是 OpenCV 計(jì)算機(jī)視覺項(xiàng)

    2024年02月05日
    瀏覽(31)
  • 圖像處理實(shí)戰(zhàn)02-yolov5目標(biāo)檢測

    圖像處理實(shí)戰(zhàn)02-yolov5目標(biāo)檢測

    YOLOv5 是一種目標(biāo)檢測算法,它是 YOLO (You Only Look Once) 系列算法的最新版本。YOLOv5 采用了一種新的架構(gòu),它包括一個(gè)基于 CSPNet (Cross Stage Partial Network) 的主干網(wǎng)絡(luò)以及一系列改進(jìn)的技巧,如多尺度訓(xùn)練、數(shù)據(jù)增強(qiáng)、網(wǎng)絡(luò)混合精度訓(xùn)練等,從而實(shí)現(xiàn)了更快的檢測速度和更好的檢測

    2024年02月09日
    瀏覽(23)
  • MATLAB算法實(shí)戰(zhàn)應(yīng)用案例精講-【圖像處理】圖像分類模型GoogLeNet&DarkNet

    目錄 GoogLeNet 模型介紹 模型結(jié)構(gòu) 模型實(shí)現(xiàn) 模型特色 模型指標(biāo) DarkNet

    2024年02月12日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包