PIE SDK圖像鏡像

 

1.算法功能簡介

    圖像鏡像可生成圖像的水平鏡像、垂直鏡像和水平垂直鏡像。水平鏡像是圖像以垂直中線爲軸, 將圖像左右半部對調;垂直鏡像是圖像以水平中線爲軸,將圖像上下半部對調。算法

    PIE支持算法功能的執行,下面對圖像鏡像算法功能進行介紹。ide

2.算法功能實現說明

2.1. 實現步驟

第一步工具

算法參數設置測試

第二步編碼

算法執行spa

第三步code

結果顯示視頻

2.2. 算法參數

C#算法DLLblog

PIE.CommonAlgo.dll教程

C#算法名稱

PIE.CommonAlgo.ImageMirrorAlgo

參數結構體

ImageMirror_Exchange_Info

參數說明

InputFilePath

String

輸入文件

(*.tif;*.tiff; *.img)

OutputFilePath

String

輸出文件路徑

(*.tif;*.tiff; *.img)

MirrorType

Int

鏡像類別(水平鏡像:0;垂直鏡像:1;水平垂直鏡像:2)

FuncName

String

功能名稱

FileTypeCode

String

根據輸出類型得到文件編碼類型

.tif/.tiff——GTiff

.img—————HFA

其餘—————ENVI

LowBands

IList<Int>

輸出鏡像影像的波段(至少選擇一個波段,{ 0, 1, 2, 3 })

2.3. 示例代碼

項目路徑

百度雲盤地址下/PIE示例程序/10.算法調用/多功能工具/ FundamentalToolDemo.ImageMirrorDemo

數據路徑

百度雲盤地址下/ PIE示例數據/柵格數據/04.World/World.tif

視頻路徑

百度雲盤地址下/PIE視頻教程/10.算法調用/多功能工具/影像格式轉換算法.avi

示例代碼

 1          /// <summary>
 2         ///圖像鏡像算法測試,本算法實現了將World.tif進行水平鏡像生成World6.tif文件
 3         /// </summary>
 4         private void Test_KrigingInterpolationAlgo()
 5         {
 6             #region 一、參數設置
 7             PIE.CommonAlgo.ImageMirror_Exchange_Info info = new PIE.CommonAlgo.ImageMirror_Exchange_Info();
 8             info.InputFilePath = @"D:\Data\World.tif";
 9             info.OutputFilePath = @"D:\Data\World6.tif";
10             info.MirrorType = 0;
11             info.FileTypeCode = "GTiff";
12             info.LowBands = new List<int> { 0,1,2 };
13 
14             PIE.SystemAlgo.ISystemAlgo algo = PIE.SystemAlgo.AlgoFactory.Instance().CreateAlgo("PIE.CommonAlgo.dll", "PIE.CommonAlgo.ImageMirrorAlgo");
15             if (algo == null) return;
16 #endregion
17             //二、算法執行
18             PIE.SystemAlgo.ISystemAlgoEvents algoEvents = algo as PIE.SystemAlgo.ISystemAlgoEvents;
19             algo.Name = "圖像鏡像";
20             algo.Params = info;           PIE.SystemAlgo.AlgoFactory.Instance().ExecuteAlgo(algo);           
21             //三、結果顯示
22 ILayer layer = PIE.Carto.LayerFactory.CreateDefaultLayer(@"D:\Data\World6.tif");
23             m_HookHelper.ActiveView.FocusMap.AddLayer(layer);            m_HookHelper.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);         
24                     }
View Code

2.4. 示例截圖

 

相關文章
相關標籤/搜索