色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RGBD相機模型與圖片處理

新機器視覺 ? 來源:博客園 ? 2023-05-15 11:33 ? 次閱讀


			

圖像

ebe160ee-f2ce-11ed-90ce-dac502259ad0.png

灰度圖

灰度是描述灰度圖像內容的最直接的視覺特征。它指黑白圖像中點的顏色深度,范圍一般從0到255,白色為255,黑色為0,故黑白圖像也稱灰度圖像。灰度圖像矩陣元素的取值通常為[0,255],因此其數據類型一般為8位無符號整數,這就是人們通常所說的256級灰度。 灰度圖:一個像素的灰度可以用8 位整數記錄,也就是一個0~255的值。

深度圖

當我們要記錄的信息更多時,一個字節就不夠了。 在RGB-D相機的深度圖中,記錄了各個像素與相機之間的距離。這個距離通常是以毫米為單位,而RGB-D 相機的量程通常在十幾米左右,超過了255。 人們會采用16 位整數(C++ 中的unsigned short)來記錄深度圖的信息,也就是位于0~65535 的值。換算成米的話,最大可以表示65 米,足夠RGB-D 相機使用了。

彩色圖

彩色圖像的表示則需要通道(channel)的概念。在計算機中,我們用紅色、綠色和藍色這三種顏色的組合來表達任意一種色彩。于是對于每一個像素,就要記錄其R、G、B 三個數值,每一個數值就稱為一個通道。例如,最常見的彩色圖像有三個通道,每個通道都由8 位整數表示。在這種規定下,一個像素占據24 位空間。 通道的數量、順序都是可以自由定義的。在OpenCV 的彩色圖像中,通道的默認順序是B、G、R。也就是說,當我們得到一個24 位的像素時,前8 位表示藍色數值,中間8 位為綠色,最后8 位 為紅色。同理,亦可使用R、G、B 的順序表示一個彩色圖。如果還想表達圖像的透明度,就使用R、G、B、A 四個通道。

RGB彩色圖與灰度圖之間的轉換

彩色圖像轉換為灰度圖像時,需要計算圖像中每個像素有效的亮度值,其計算公式為: Y = 0.299R + 0.578G + 0.114B

雙目相機通過視差來計算深度。RGBD相機則可以主動測量每個像素的深度。

  1. 通過紅外結構光(Structured Light)來測量像素距離的。例子有Kinect 1 代、Project Tango 1 代、Intel RealSense 等。

  2. 通過飛行時間法(Time-of-flight,ToF)原理測量像素距離的。例子有Kinect 2 代和一些現有的ToF 傳感器

RGBD相機原理圖 ebf5ba62-f2ce-11ed-90ce-dac502259ad0.png

深度圖的保存

那么如何從RGBD相機提取像素的深度信息呢? 下面是一個簡單的小程序,可以顯示像素的深度信息.

#include 
#include 
#include 
using namespace std;

float depthscale = 1.0f/1000; //尺度因子,表示一個像素對應多少實際中的米
int main(int argc, char **argv)
{
    cv::Mat  depth = cv::imread("img.jpg");
    depth.convertTo(depth,CV_32FC1,depthscale); //這個轉換很重要

    for (int v = 0; v < depth.rows; v++)
    {
        for (int u = 0; u < depth.cols; u++) {
            unsigned int d = depth.ptr<unsigned short>(v)[u]; // 深度值
            if (d == 0)
                continue; // 為0表示沒有測量到
            else
            {
                cout<"";
                if(v%50==0||u%50==0)
                    cout<<endl;
            }
            
        }
    }
    return 0;
}

ConvertTo()函數

需要注意,其中的ConvertTo函數作用如下:
img: 圖像數據來源,其類型為Mat。
注意: 不是所有格式的Mat型數據都能被使用保存為圖片,目前OpenCV主要只支持單通道和3通道的圖像,并且此時要求其深度為8bit和16bit無符號(即CV_16U),所以其他一些數據類型是不支持的,比如說float型等。如果Mat類型數據的深度和通道數不滿足上面的要求,則需要使用convertTo()函數和cvtColor()函數來進行轉換。
convertTo()函數負責轉換數據類型不同的Mat,即可以將類似float型的Mat轉換到imwrite()函數能夠接受的類型。
而cvtColor()函數是負責轉換不同通道的Mat,因為該函數的第4個參數就可以設置目的Mat數據的通道數(只是我們一般沒有用到它,一般情況下這個函數是用來進行色彩空間轉換的)。
另外也可以不用imwrite()函數來存圖片數據,可以直接用通用的XML IO接口函數將數據存在XML或者YXML中。

具體含義,縮放并轉換到另外一種數據類型:

  1. dst:目的矩陣;

  2. type:需要的輸出矩陣類型,或者更明確的,是輸出矩陣的深度,如果是負值(常用-1)則輸出矩陣和輸入矩陣類型相同;

  3. scale:比例因子;

  4. shift:將輸入數組元素按比例縮放后添加的值;
    dst(i)=src(i)xscale+(shift,shift,...)

審核編輯 :李倩
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 圖像數據
    +關注

    關注

    0

    文章

    52

    瀏覽量

    11276
  • 函數
    +關注

    關注

    3

    文章

    4329

    瀏覽量

    62575
  • 模型
    +關注

    關注

    1

    文章

    3229

    瀏覽量

    48812

原文標題:RGBD相機模型與圖片處理

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    AD8275 spice模型“AD8275.cir”自動生成了一個LTspice模型用來仿真,仿真時彈出圖片所示窗口如何處理

    我用官網的AD8275 spice模型“AD8275.cir”自動生成了一個LTspice模型用來仿真,仿真時彈出圖片所示窗口,如何處理
    發表于 06-04 12:27

    #硬聲創作季 相機標定任務概述 哥倫比亞大學相機模型與標定系列課程(1)

    相機模型機器學習
    Mr_haohao
    發布于 :2022年10月12日 15:15:21

    #硬聲創作季 相機標定算法詳解 哥倫比亞大學相機模型與標定系列課程(3)

    相機模型機器學習
    Mr_haohao
    發布于 :2022年10月12日 15:16:01

    #硬聲創作季 相機的內參和外參矩陣 哥倫比亞大學相機模型與標定系列課程(4)

    相機模型機器學習
    Mr_haohao
    發布于 :2022年10月12日 15:16:37

    基于LABVIEW對數碼相機圖片處理研究

    希望有經驗的各位培養們給這個論文——基于LABVIEW對數碼相機圖片處理研究 ,做解說,謝謝!
    發表于 05-09 22:51

    基于LABVIEW對數碼相機圖片處理研究

    我的畢業論文的題目是——基于LABVIEW對數碼相機圖片處理研究,希望大家給給幫助!
    發表于 05-09 22:52

    工業相機USB傳輸圖片問題

    ,現在想用這根線把相機直接連接到一塊FPGA開發板上不經過電腦了,直接把圖片傳輸到FPGA處理,但是開發板上沒有USB 接口,請問我直接買一個USB模塊擴展的話這個模塊還需要USB芯片嗎,應該怎么去把
    發表于 05-04 10:34

    數碼相機定位

    數碼相機定位:本文對數碼相機的定位情況進行了分析。首先運用matlab 軟件對像的圖片進行數據處理,采用最小二乘法擬合出像的邊緣二次曲線方程。以小孔成像原理和空間轉換
    發表于 11-18 11:51 ?44次下載

    迷你圖片處理工具

    圖片處理工具,可以修改圖片編碼格式,能夠處理JAVA不能識別的圖片
    發表于 03-24 14:52 ?4次下載

    JAVA教程之圖片的拖動處理

    JAVA教程之圖片的拖動處理,很好的學習資料。
    發表于 03-31 11:13 ?7次下載

    圖片數字化FFT處理以及應用

    圖片數字化FFT處理以及應用說明。
    發表于 05-31 15:15 ?11次下載

    面向邊緣計算和AI應用的智能工業相機

    設計的相機中進行圖片處理,增強了圖像的可靠性,減少了線纜數量,降低了系統成本。圖片邊緣處理,降低了帶寬和存儲容量,因此降低了系統的總成本。
    的頭像 發表于 06-16 15:54 ?1980次閱讀

    如何學習相機模型與標定?

    相機標定是通過輸入帶有標定patter的標定板來獲得相機參數的一個過程。實際的光學成像是一套非常復雜的過程,從三維世界投影到相機中的二維圖像。相機標定就是用抽象的數學
    的頭像 發表于 06-01 14:36 ?758次閱讀
    如何學習<b class='flag-5'>相機</b><b class='flag-5'>模型</b>與標定?

    如何區分工業相機與普通相機

    工業相機輸出的是裸數據(raw data),其光譜范圍也往往比較寬,比較適合進行高質量的圖像處理算法,例如機器視覺(Machine Vision)應用。而普通相機拍攝的圖片,其光譜范圍
    發表于 07-10 09:10 ?788次閱讀
    如何區分工業<b class='flag-5'>相機</b>與普通<b class='flag-5'>相機</b>

    谷歌模型怎么用PS打開文件和圖片

    谷歌模型本身并不是用Adobe Photoshop(簡稱PS)打開的文件和圖片格式。谷歌模型通常是用于機器學習和深度學習的模型文件,如TensorFlow
    的頭像 發表于 02-29 18:25 ?1436次閱讀
    主站蜘蛛池模板: 老师湿乎乎两半嫩| 99热久这里都是精品小草| 无码国产精品高潮久久9| 內射XXX韩国在线观看| 久久精品国产只有精品| 好男人在线高清WWW免费观看| 国产成人aaa在线视频免费观看| xiao776唯美清纯| www伊人网| 波多野结衣二区| 爱暖暖1000部免费| 不分昼夜H1V3| 超碰99热在线精品视频| 超碰免费碰免费视频| 伧理片午夜伧理片| 超碰 无码 中文字幕| 国产99精品视频| 国产精品嫩草影院| 国产专区_爽死777| 精品人妻伦九区久久AAA片69| 九色PORNY真实丨首页| 久久毛片基地| 奶头从情趣内衣下露了出来AV| 嗯好大好猛皇上好深用力| 秋霞电影院午夜伦高清| 全球真实小U女视频合集| 三级电影免费看| 亚洲 欧美 清纯 校园 另类| 亚洲精品视频在线免费| 印度12 13free| 91嫩草视频在线观看| xiah俊秀| 国产伦精品一区二区免费| 娇妻归来在线观看免费完整版电影| 九九热综合| 男人边吃奶边挵进去呻吟漫画| 啪啪啪社区| 婷婷色色狠狠爱| 伊人久久综在合线亚洲| 99精品国产免费久久久久久下载| 北条麻妃のレズナンパ|