原创 有序二維數組中搜索特定的數

     關於二維有序數組中搜索,其題目如下:給定一個矩陣,都是整數,每一行從左到右升序,每一列從上到下有序,例如下面的矩陣[ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34,

原创 GDAL影像投影轉換

GDAL影像投影轉換 又有一段時間沒有寫博客了,今天就把影像(DEM/遙感影像等)投影轉換的經驗和大家分享下。那麼關於GDAL影像投影轉換的文章在網上可以說是有很多,如果你還不清楚地圖投影那麼我建議你去看一看地圖投影和座標系統的基礎知識,

原创 矩陣的特徵值和特徵向量的雅克比算法C/C++實現

矩陣的特徵值和特徵向量是線性代數以及矩陣論中非常重要的一個概念。在遙感領域也是經常用到,比如多光譜以及高光譜圖像的主成分分析要求解波段間協方差矩陣或者相關係數矩陣的特徵值和特徵向量。根據普通線性代數中的概念,特徵值和特徵向量可以用傳統的方

原创 OpenGL+QT實現矢量和影像的疊加繪製

OpenGL+QT實現矢量和影像的疊加繪製 又有好久沒更新博客了,今天週末抽出一點時間寫一些OpenGL用來繪製GIS中矢量和影像的文章。 一、QT下OpenGL框架的初始化OpenGL的介紹我在這裏就沒有必要介紹了,那OpenGL和QT

原创 基於GPU的高分一號影像正射校正的設計與實現

基於GPU的高分一號影像正射校正的設計與實現一 RPC正射校正的原理影像正射校正的方法有很多,主要包含兩大類:一類是嚴格的幾何糾正模型,另一類是近似幾何糾正模型。當遙感影像的成像模型和有關參數已知時,可以根據嚴格的成像模型來校正圖像,這種

原创 三維空間座標的相似變換原理與實現

說到這個博客的題目,可能覺得有點大,在測繪學領域中三維空間座標的相似變換用得非常多。那麼什麼是三維座標的相似變換呢?就是在兩個三維直角座標系中,座標進行變換,兩個座標系之間變換需要七個參數,即三個平移分量,以及三個旋轉參數和一個尺度因子

原创 OpenGL ES着色語言-UBO

    Uniform Buffer Objects(簡稱UBO)是OpenGL3.1引入的。UBO是顯卡上的一塊緩衝區,即GPU buffer。它允許將數據從客戶端程序傳送到GLSL程序中。    使用UBO的最大好處是可以在各個sha

原创 GLSL實現圖像處理

今天晚上沒事將以前弄的OPENGL着色語言實現濾鏡效果的實現和大家分享一下,濾鏡主要包括圖像的對比度調整、浮雕效果、彩色圖片灰度化、卷積等操作。         這些操作其本質上是屬於圖像處理的東西,OpenGL實現圖像處理主要是用到了G

原创 VS2008配置NDK開發環境

    看到很多網上的文章都有寫VS配置NDK開發環境,我是參考了其中的一篇文章,連接是點擊打開鏈接。但是這篇文章裏面的配置不能關聯Application.mk文件。所以覺得不是很方便,經過一陣摸索,終於找到一個可以 關聯Applicat

原创 Hilbert曲線簡介及生成算法

Hilbert曲線 Hilbert曲線是一種填充曲線,類似的填充曲線還包括Z曲線,格雷碼等其他方法。Hilbert曲線依據自身空間填充曲線的特性,可以線性地貫穿二維或者更高維度每個離散單元,並且僅僅穿過一次,並對每個離散單元進行線性排序和

原创 GLSL程序對象的C++封裝

      在OpenGL的shader編程中,最常用的可能就是程序對象了,GLSL的程序對象的創建、加載shader等步驟都是固定的,如果每次都寫同樣的代碼,覺得十分浪費時間,所以現在就將我在Shader學習過程中自己封裝的GLSLPr

原创 OpenGL ES着色語言-光照效果之散射光

    OpenGL光照模型,在固定管線中,主要是調用OpenGL函數實現,如果使用着色器,該怎麼實現。本文的例子是移植OpenGL 4.0 Shading Language Cookbook中第二章的例子。代碼已經移植到Android上

原创 c++三種使用shared_ptr的方式

在c++中,我們是越來越多的使用智能指針,其中我們說的智能指針通常是指基於引用計數的智能指針,在c++11標準中就是std::shared_ptr。它的特點是可以安全的放入STL容器中。有以下三種方式可以使用shared_ptr1、如果你

原创 常用位操作的c++實現

        看到這個標題,可能大家會誤解,其實就是貢獻幾個比較實用的運用位運算實現的操作,這對於加快程序的運行速度很有幫助。具體的實現是參考http://graphics.stanford.edu/~s

原创 C/C++獲得對齊的內存的跨平臺解決方案

       在C/C++開發的時候,有時候需要獲得內存對齊的內存塊,這一需求主要源於多媒體指令集需要內存對齊的內存塊,這樣處理速度會快一點。例如SSE/SSE2/MMX/AVX等指令集都需要對齊的內存。這些多媒體指令集常用於語音合成、圖