原创 遙感影像顯示相關的技術總結

遙感影像顯示相關的技術總結 前言    從事遙感影像和圖像處理有一段時間了,今天就把遙感影像顯示相關的技術和大家分享一下。    平常我們用的GIS軟件或者說遙感軟件都能講遙感影像的數據顯示在屏幕上,並且有些顯示效果還不錯,其中ENVI的

原创 我的2013-從GIS學生到GIS職業人的飛躍

我的2013-從GIS學生GIS職業人的飛躍前言:從末日中度過了2012年,我們偉大的人類把這個世界末日的謊言給揭穿了,但是不知不覺中,2013年又即將悄悄從我們身邊溜走,或許已經溜走了,再也抓不住了。在這特殊的時刻,我想說點什麼,有過傷

原创 二維圖形旋轉公式的推導

    關於二維圖形旋轉可能在很多計算機圖形學相關的書籍上都會介紹,然而真正理解公式推導過程的卻講得不多。那麼如何推導出二維圖形繞某一點旋轉的公式呢?我在這裏就將其推導過程簡要的說明一下。其實推導過程比較簡單,首先我們來看一幅圖,看看如何

原创 計算機圖形學之數字微分分析畫線算法

計算機圖形學之數字微分分析畫線算法 現代計算機繪製,我們程序員經常會碰到畫圖的編程問題,並且現在的畫圖的API很多,換句話說,圖形API非常豐富,從TC的graphic到Windows的GDI/GDI+,以及跨平臺的開放標準OpenGL。

原创 OpenCL相關函數簡單封裝

       在opencl編程中,很多時候需要初始化很多東西,比如查詢設備,選擇計算設備,初始化上下文,構建程序和編譯內核程序。如果每次都重寫寫一遍這些過程,就會感動很繁瑣,所以,我就簡單封裝了幾個函數,用於我的opencl編程中。關於

原创 VS2008環境下編譯Sqlite源代碼

VS2008環境下編譯Sqlite源代碼 好久沒寫博客了,趁着這個週末沒啥事,就研究了一下Sqlite這個輕量級的數據庫,這個數據庫是由純C代碼寫成的,很適合做輕量級的應用,如嵌入式GIS中數據存儲的問題,智能客戶端數據存儲等等。當然,我

原创 利用GDAL實現影像的幾何校正

一、概述    遙感影像和地理座標進行關聯的方式一般有好幾種,一種是直接給出了仿射變換系數,即6個參數,左上角地理座標,縱橫方向上的分辨率,以及旋轉系數。在這種情況下,求出某一像素點的地理座標非常容易,直接用公式可以求出,具體代碼如下:v

原创 CUDA圖像旋轉的實現

CUDA圖像旋轉的實現     由於最近工作比較忙,有一段時間沒寫博客了,今天就將以前基於CUDA做的圖像旋轉的demo奉獻給大家。在網上看到很多圖像旋轉的博客文章,可以說大部分做的只是圖像旋轉後還保持原來圖像的大小,那麼這就帶來一個問題

原创 DEM山體陰影原理以及算法詳解

山體陰影原理以及算法詳解 山體陰影基本原理:山體陰影是假想一個光源在某個方向和某個太陽高度的模擬下,用過臨近像元的計算來生成一副0-255的灰度圖。 一、山體陰影的主要參數:1、  太陽光線的入射角度:這個角度的量算起點是正北方向,按照順

原创 CUDA和OpenCL異同點比較

CUDA和OpenCL異同點比較 一、概述    對CUDA和opencl有一定的編程經驗,但是細心的人可以發現,OPENCL就是仿照CUDA來做的。既然兩個GPU的編程框架如此相像,那麼他們究竟有什麼不同呢?下面就一一道來。 二、數據並

原创 C++插件架構淺談與初步實現

一、插件架構初步介紹    想到寫本博客,也沒想到更好的名字,目前就先命這個名吧。說到插件架構,或許大部分IT從業者都聽過或者某些牛人也自己實現過穩定高效的插件框架。目前有很多軟件以及庫都是基於插件架構,例如PS、我所在行業的GIS軟件如

原创 OpenCL從文本文件構建程序對象

Opencl創建程序對象主要有兩種方式:由文本文件構建和由二進制文件構建。本文主要給出從文本文件構建程序對象的方法。 從文本文件構建程序對象的API函數是:extern CL_API_ENTRY cl_program CL_API_CAL

原创 數字在排序數組中出現的起始索引號

題目如下:給定一個升序的整數數組,查找某一個值在數組中出現的索引號,例如,輸入數組2,3,3,4,4,5;查找的數是3,則返回1,2。時間複雜度要求爲O(logN)。        初次拿到這個題目可以立即想到用二分查找來做,先比較中間的

原创 基於OpenCL的數字地形分析之坡度坡向提取

基於OpenCL的數字地形分析之坡度坡向提取    又有一段時間沒有發表博客了,可能最近工作有點忙。今天就把最近的學習和研究成果和大家分享一下。對於GIS稍微有點了解的人都知道地形分析中的坡度和坡向,這是數字地形分析中最基本的分析了,對於

原创 OpenCL內核函數支持double和結構體

在opencl開發中,有時需要保證精度,需要支持double類型,但是double類型在opencl標準裏面不是要求強制實現的,有些設備支持,有些不支持,如果你的設備支持的話,就需要在所有出現在double的最前面聲明如下:#pragma