原创 結構光掃描儀概述

文章目錄原理(Principle)圖案的生成(Generation of light pattern)標定(Calibration)條紋圖案分析(Analysis of stripe patterns )精度和範圍(Precisi

原创 Visual Studio C++ 遠程調試 | 基於TeamView 的外網遠程調試

Visual Studio 遠程調試 | 基於TeamView VPN的外網調試前言準備Visual Stdio遠程調試步驟基於TeamView NPV的外網遠程調試 前言 在項目/產品開發過程中,BUG總是無處不在,幾乎不可避免

原创 軟件開發文檔整理(之)一張示意圖 | 清晰明瞭

  在整個軟件開發週期,開發文檔是必不可少的資料,它們貫穿於整個開發週期,用來評估計劃、規劃進度、項目管理、軟件測試、軟件發佈,可以說至關重要。   開發文檔必須歸檔,沒有歸檔的文檔作用大打折扣,時效性低且管理混亂。必須有計劃有目的性

原创 OpenSceneGraph | OSG如何存儲帶紋理osgb格式可以節省空間

  在使用OSG(OpenSceneGraph)存儲帶紋理osgb格式的過程中,大家會遇到這樣一種情況:存儲後的osgb文件所佔用的大小遠大於原始文件的大小,幾倍至幾十倍。這是爲何呢?原因是OSG默認的存儲格式是不壓縮存儲,所以解決方

原创 C++學習 | C++ Implement的使用 | 消除 warning C4251

  在編寫C++動態庫的過程中,我們常常會聽到某個要求:請隱藏動態庫頭文件裏類接口裏的成員變量!或者自己在編寫動態庫時,突然意識到自己好像讓調用者看到的信息太多了,而這些信息根本無需被調用者看到,往往調用者只需要接口函數而已,所以給他

原创 不要排斥中文註釋

  項目的代碼註釋,我們並不限定只能使用英文,對某些對較爲複雜算法的解釋,用英文會帶來理解上的問題,用中文註釋更易理解,一般簡單易懂的可以用英文,註釋最重要的是能夠看懂,看不懂,用多國際化的語言都不頂用,代碼不只是給自己看的。而且在存

原创 算法庫的設計之成員變量的類型

       一個好的算法庫,應該將所有的成員變量都設爲私有private或保護protected類型,一切對成員變量的外部操作都通過公共成員函數來完成,這樣才能最大程度上避免外部對庫的成員變量隨意無規則使用,如取值賦值等操作,增加代碼的

原创 C/C++ Muti-Thread多線程基礎 | 線程Thread、事件Event、隊列Queue、信號量Semaphore

文章目錄前言線程 Thread創建線程CreateThread_beginthread_beginthreadexpthread_create線程運行結束線程事件 Event隊列 Queue信號量 Semaphore 前言   多線

原创 基於MFC的實時可視化項目中視圖刷新消息的嚴謹使用

        在實時可視項目中,視圖的實時刷新顯示對軟件的體驗感來說非常重要,當算法的效率達到實時,比如一秒40幀,如果實時顯示幀率更不上,則體驗感將大大折扣,讓用戶感覺你的算法並沒有40幀,當然最關鍵的是解決顯示的效率問題。    

原创 Exception from HRESULT:

在MFC工程中,在類嚮導的時候,偶爾會遇到 “Exception from HRESULT:” 的問題,問題的原因可能是移動工程之類的操作破壞了工程的某些文件或者更改了某些路徑的映射關係,這裏有一個解決方法: 刪除所有解決方案生成時產生的

原创 雙目立體匹配經典算法之Semi-Global Matching(SGM)概述:匹配代價計算之Census變換(Census Transform,CT)

  基於互信息的匹配代價計算由於需要初始視差值,所以需要通過分層迭代的方式得到較爲準確的匹配代價值,而且概率分佈計算稍顯複雜,這導致代價計算的效率並不高。學者Zabih和Woodfill 1 提出的基於Census變換法也被廣泛用於匹

原创 雙目立體匹配經典算法之Semi-Global Matching(SGM)概述:代價聚合(Cost Aggregation)

  由於代價計算步驟只考慮了局部的相關性,對噪聲非常敏感,無法直接用來計算最優視差,所以SGM算法通過代價聚合步驟,使聚合後的代價值能夠更準確的反應像素之間的相關性,如圖1所示。聚合後的新的代價值保存在與匹配代價空間C同樣大小的聚合代

原创 雙目立體匹配經典算法之Semi-Global Matching(SGM)概述:視差計算、視差優化

文章目錄視差計算視差優化剔除錯誤匹配提高視差精度抑制噪聲 視差計算   在SGM算法中,視差計算採用贏家通吃(WTA)算法,每個像素選擇最小聚合代價值所對應的視差值作爲最終視差,視差計算的結果是和左影像相同尺寸的視差圖,存儲每個像

原创 遞歸函數對棧內存的使用

遞歸函數由於在運算中,重複的遞歸調用自身,函數的局部變量所佔用的內存空間持續增長並不會被釋放,導致局部變量所佔用的棧內存可用空間越來越少,當遞歸調用深度達到一定量級,就可能會使得棧內存空間不足,導致內存分配失敗。所以當設計遞歸函數的時

原创 雙目立體匹配中的核線約束[極線約束]

  雙目立體匹配在尋找同名點的過程中,若沒有任何先驗約束,則對左影像每個像素,需要在右影像全圖空間中進行搜索,這種暴力搜索方法不僅效率非常低,而且很容易由於各種因素(如弱紋理、重複紋理等)搜索到錯誤的對應點,而利用核線幾何約束則是減小