PostGIS實現矢量數據轉柵格數據【ST_AsRaster】

ST_AsRaster函數應用詳解:將矢量數據轉換為柵格數據

[文章目錄]

一、函數概述

二、函數參數與分組說明

三、核心特性與注意事項

四、示例代碼

五、應用場景

六、版本依賴

七、總結


一、函數概述

ST_AsRaster是PostGIS中用于將幾何對象(如點、線、面)轉換為柵格數據的核心函數。它通過多種參數組合,靈活控制輸出柵格的空間參考、像素尺寸、對齊方式、波段數等屬性,適用于地理數據柵格化、空間分析及可視化場景。

二、函數參數與分組說明

函數共有10種變體,可歸納為3大參數分組,每組核心差異在于柵格尺寸與對齊方式的定義方法。

1. 基于參考柵格的轉換

通過已有柵格的屬性(如像素大小、原點)定義輸出柵格。

  • 適用場景:需保持與現有柵格一致的空間分辨率和對齊方式(如疊加分析)。
-- 單波段
raster ST_AsRaster(geometry geom, raster ref, text pixeltype, double precision value=1, double precision nodataval=0, boolean touched=false);
-- 多波段(數組參數)
raster ST_AsRaster(geometry geom, raster ref, text[] pixeltype=ARRAY['8BUI'], double precision[] value=ARRAY[1], double precision[] nodataval=ARRAY[0], boolean touched=false);

關鍵參數:

  • ref:參考柵格,決定輸出柵格的scalex、scaley、gridx、gridy和 SRID。
  • pixeltype/pixeltype[]:像素類型(如’8BUI’表示 8 位無符號整數)。
  • value[]:各波段初始值(默認全為 1)。
  • touched:是否渲染與幾何對象 “接觸” 的像素(默認僅渲染內部像素)。

2. 基于像素尺寸的轉換(自動計算柵格大小)

通過指定像素尺寸(scalex、scaley)定義柵格,輸出柵格的寬度和高度由幾何對象范圍自動計算。

  • 適用場景:需固定像素分辨率,動態適配幾何范圍(如遙感影像處理)。
-- 單波段(指定網格原點)
raster ST_AsRaster(geometry geom, double precision scalex, double precision scaley, double precision gridx, double precision gridy, text pixeltype, ...);
-- 多波段(指定左上原點)
raster ST_AsRaster(geometry geom, double precision scalex, double precision scaley, text[] pixeltype, ..., double precision upperleftx=NULL, double precision upperlefty=NULL, ...);

關鍵參數:

  • scalex/scaley:像素寬度 / 高度(X/Y 方向分辨率)。
  • gridx/gridy:網格原點(左下角或任意角點)。
  • upperleftx/upperlefty:左上原點(替代gridx/gridy,更常用)。
  • skewx/skewy:像素傾斜參數(默認 0,用于非正交柵格)。

3. 基于固定尺寸的轉換(自動計算像素尺寸)

通過指定柵格寬度和高度(width、height)定義柵格,像素尺寸由幾何對象范圍自動計算。

  • 適用場景:需固定柵格像素數量(如生成固定分辨率的縮略圖)。
-- 單波段(指定網格原點)
raster ST_AsRaster(geometry geom, integer width, integer height, double precision gridx, double precision gridy, text pixeltype, ...);
-- 多波段(指定左上原點)
raster ST_AsRaster(geometry geom, integer width, integer height, text[] pixeltype, ..., double precision upperleftx=NULL, double precision upperlefty=NULL, ...);

關鍵參數:

  • width/height:柵格的列數 / 行數(像素數量)。
  • 其他參數與第二組類似,但scalex/scaley由幾何范圍與尺寸自動計算。

查看全部文章內容請轉,更多開源GIS相關知識技能分享,提供學習問答交流

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/83584.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/83584.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/83584.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux 線程(上)

前言:大家早上中午晚上好!!今天來學習一下linux系統下所謂的線程吧!!! 一、重新理解進程,什么是進程? 1.1 圖解 其中黑色虛線部分一整塊就是進程,注意:一整…

Java API學習筆記

一.類 1. String 類 不可變性:String對象創建后不可修改,每次操作返回新對象 String str "Hello"; str.length(); str.charAt(0); str.substring(1, 4); str.indexOf("l"); str.equals("hel…

醫療信息系統安全防護體系的深度構建與理論實踐融合

一、醫療數據訪問系統的安全挑戰與理論基礎 1.1 系統架構安全需求分析 在醫療信息系統中,基于身份標識的信息查詢功能通常采用分層架構設計,包括表現層、應用層和數據層。根據ISO/IEC 27001信息安全管理體系要求,此類系統需滿足數據保密性…

5.18本日總結

一、英語 復習list3list28 二、數學 學習14講部分內容,1000題13講部分 三、408 學習計網5.3剩余內容 四、總結 計網TCP內容比較重要,連接過程等要時常復習;高數學到二重積分對定積分的計算相關方法有所遺忘,需要加強鞏固。…

MATLAB2025新功能

截至2023年9月,MATLAB官方尚未公布2025版本的具體更新內容。根據歷史更新規律和技術發展趨勢,未來版本可能會在以下方面進行優化: AI與深度學習增強 可能新增自動化模型壓縮工具強化生成式AI模型支持改進的ONNX格式轉換接口 性能提升 矩陣運…

算法題(149):矩陣消除游戲

審題: 本題需要我們找到消除矩陣行與列后可以獲得的最大權值 思路: 方法一:貪心二進制枚舉 這里的矩陣消除時,行與列的消除會互相影響,所以如果我們先統計所有行和列的總和,然后選擇消除最大的那一行/列&am…

Uniapp、Flutter 和 React Native 全面對比

文章目錄 前言Uni-app、Flutter 和 React Native 跨平臺框架對比報告1. 性能對比2. 跨平臺能力3. 學習曲線4. 社區生態與第三方庫5. 原生能力擴展6. UI 渲染能力7. 企業支持與典型使用場景8. 開發效率與工具鏈 前言 將對 Uniapp、Flutter 和 React Native 進行全面對比&#x…

JAVA SE 多線程(上)

文章目錄 📕1. Thread類及常見方法??1.1 創建線程??1.2 Thread 的常見構造方法??1.3 Thread 的幾個常見屬性??1.4 啟動一個線程---start()??1.5 中斷一個線程---interrupt()??1.6 等待一個線程---join()??1.7 獲取當前線程引用??1.8 休眠當前線程 &…

Linux云計算訓練營筆記day10(MySQL數據庫)

Linux云計算訓練營筆記day10(MySQL數據庫) 目錄 Linux云計算訓練營筆記day10(MySQL數據庫)ifnull別名聚合函數group byHAVING 子查詢關聯查詢 ifnull 在DQL語句中可以使用函數或表達式 函數 IFNULL(arg1,arg2) 如果arg1為NULL,函…

上位機知識篇---流式Web服務器模式的實現

文章目錄 前言 前言 本文簡單介紹了流式Web服務器模式的實現。

Dify與n8n全面對比指南:AI應用開發與工作流自動化平臺選擇【2025最新】

Dify與n8n全面對比指南:AI應用開發與工作流自動化平臺選擇【2025最新】 隨著AI技術與自動化工具的迅速發展,開發者和企業面臨著多種平臺選擇。Dify和n8n作為兩個備受關注的自動化平臺,分別專注于不同領域:Dify主要面向AI應用開發&…

day19-線性表(順序表)(鏈表I)

一、補充 安裝軟件命令: sudo apt-get install (軟件名) 安裝格式化對齊:sudo apt-get install clang-format內存泄漏檢測工具: sudo apt-get install valgrind 編譯后,使用命令 valgrind ./a.out 即可看內存是…

AI:人形機器人一定是人的形狀嗎?

本文將從技術角度分析人形機器人是否必須是人的形狀,以及人形與非人形機器人在適用場合、優缺點上的差異。以下是詳細解答: 人形機器人一定是人的形狀嗎? 不,人形機器人(Humanoid Robot)在技術上通常指外…

布隆過濾器和布谷鳥過濾器

原文鏈接:布隆過濾器和布谷鳥過濾器 布隆過濾器 介紹 布隆過濾器(Bloom Filter)是 1970 年由布隆提出的。它實際上是一個很長的二進制向量和一系列隨機映射函數,檢查值是“可能在集合中”還是“絕對不在集合中” 空間效率高&a…

無需配置光貓,使用網管交換機配合路由器的IPTV功能實現單線復用

一、背景 弱電箱和電視柜只預留了一根網線,路由器放在電視柜,想實現既可以上網又可以正常觀看iptv,本文提供了一種方法。 二、準備工作 1、帶iptv功能的路由器;2、水星sg105pro網管交換機;3、網線若干; …

深入理解SpringBoot中的SpringCache緩存技術

深入理解SpringBoot中的SpringCache緩存技術 引言 在現代應用開發中,緩存技術是提升系統性能的重要手段之一。SpringBoot提供了SpringCache作為緩存抽象層,簡化了緩存的使用和管理。本文將深入探討SpringCache的核心技術點及其在實際業務中的應用場景。…

2025認證杯數學建模A題思路+代碼+模型:小行星軌跡預測

2025認證杯數學建模A題思路代碼模型,詳細內容見文末名片 近地小行星( Near Earth Asteroids, NEAs )是軌道相對接近地球的小行 星,它的正式定義為橢圓軌道的近日距不大于 1.3 天文單位( AU )的小行星。 …

LeetCode Hot100刷題——輪轉數組

56. 輪轉數組 給定一個整數數組 nums,將數組中的元素向右輪轉 k 個位置,其中 k 是非負數。 示例 1: 輸入: nums [1,2,3,4,5,6,7], k 3 輸出: [5,6,7,1,2,3,4] 解釋: 向右輪轉 1 步: [7,1,2,3,4,5,6] 向右輪轉 2 步: [6,7,1,2,3,4,5] 向右輪轉 3 步: …

「Mac暢玩AIGC與多模態41」開發篇36 - 用 ArkTS 構建聚合搜索前端頁面

一、概述 本篇基于上一節 Python 實現的雙通道搜索服務(聚合 SearxNG 本地知識庫),構建一個完整的 HarmonyOS ArkTS 前端頁面。用戶可在輸入框中輸入關鍵詞,實時查詢本地服務 http://localhost:5001/search?q...,返…

開源鴻蒙北向源碼開發: 5.0kit化相關sdk編譯

5.0kit化可以在編譯系統sdk時添加,將你的kit文件加入編譯使得最終生成的sdk包含kits文件 修改編譯腳本 修改build倉里面的構建腳本文件,添加kits目錄腳本命令 社區的build腳本已經有kits編譯功能了,只需要把你的kits目錄新增的kit拷貝到社區倉interface倉了,和社區的都一起編…