圖像鏡像可生成圖像的水平鏡像、垂直鏡像和水平垂直鏡像。水平鏡像是圖像以垂直中線爲軸, 將圖像左右半部對調;垂直鏡像是圖像以水平中線爲軸,將圖像上下半部對調。算法
PIE支持算法功能的執行,下面對圖像鏡像算法功能進行介紹。ide
第一步工具 |
算法參數設置測試 |
第二步編碼 |
算法執行spa |
第三步code |
結果顯示視頻 |
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 }) |
項目路徑 |
百度雲盤地址下/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 } |