增加植被物候算法特征筛选接口,从xml中选择需要的特征组合

Mn
tian jiax 2023-09-05 10:48:34 +08:00
parent f6f628928e
commit ad6974dfff
5 changed files with 115 additions and 38 deletions

View File

@ -42,7 +42,7 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>zip</DataType> <DataType>zip</DataType>
<ParaSource>Man</ParaSource> <ParaSource>Man</ParaSource>
<ParaValue>D:\micro\datas\哨兵山西\slc\S1A_IW_SLC__1SDV_20190113T103754_20190113T103821_025458_02D22C_9158.zip</ParaValue> <ParaValue>E:\MicroWorkspace\Micro\哨兵山西\slc\S1A_IW_SLC__1SDV_20190113T103754_20190113T103821_025458_02D22C_9158.zip</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>
@ -57,7 +57,7 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>zip</DataType> <DataType>zip</DataType>
<ParaSource>Man</ParaSource> <ParaSource>Man</ParaSource>
<ParaValue>D:\micro\datas\哨兵山西\slc\S1A_IW_SLC__1SDV_20190206T103753_20190206T103820_025808_02DED6_28CB.zip</ParaValue> <ParaValue>E:\MicroWorkspace\Micro\哨兵山西\slc\S1A_IW_SLC__1SDV_20190206T103753_20190206T103820_025808_02DED6_28CB.zip</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>
@ -74,7 +74,7 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>nc</DataType> <DataType>nc</DataType>
<ParaSource>Man</ParaSource> <ParaSource>Man</ParaSource>
<ParaValue>D:\micro\datas\哨兵山西\气象数据\1.mars.internal-1658384650.5526075-15219-5-7be4b161-af30-4e9d-a558-f31bfa27880a</ParaValue> <ParaValue>E:\MicroWorkspace\Micro\哨兵山西\气象数据\1.mars.internal-1658384650.5526075-15219-5-7be4b161-af30-4e9d-a558-f31bfa27880a</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>
@ -91,7 +91,7 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>nc</DataType> <DataType>nc</DataType>
<ParaSource>Man</ParaSource> <ParaSource>Man</ParaSource>
<ParaValue>D:\micro\datas\哨兵山西\气象数据\2.mars.internal-1658384693.9301581-22095-6-d9c91225-e15e-41ff-b9b2-e328e6f720cd</ParaValue> <ParaValue>E:\MicroWorkspace\Micro\哨兵山西\气象数据\2.mars.internal-1658384693.9301581-22095-6-d9c91225-e15e-41ff-b9b2-e328e6f720cd</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>
@ -106,11 +106,11 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>tif</DataType> <DataType>tif</DataType>
<ParaSource>Man</ParaSource> <ParaSource>Man</ParaSource>
<ParaValue>D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N38E110_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N38E111_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N39E107_dem.tif; <ParaValue>E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N38E110_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N38E111_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N39E107_dem.tif;
D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N39E108_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N39E109_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N39E110_dem.tif; E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N39E108_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N39E109_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N39E110_dem.tif;
D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N39E111_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N37E107_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N37E108_dem.tif; E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N39E111_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N37E107_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N37E108_dem.tif;
D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N37E109_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N37E110_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N37E111_dem.tif; E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N37E109_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N37E110_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N37E111_dem.tif;
D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N38E107_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N38E108_dem.tif;D:\micro\datas\哨兵山西\DEM\tifs\ASTGTM2_N38E109_dem.tif</ParaValue> E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N38E107_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N38E108_dem.tif;E:\MicroWorkspace\Micro\哨兵山西\DEM\tifs\ASTGTM2_N38E109_dem.tif</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>
@ -125,26 +125,26 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>string</DataType> <DataType>string</DataType>
<ParaSource>Cal</ParaSource> <ParaSource>Cal</ParaSource>
<ParaValue>D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210330T171551_V20190617T225942_20190619T005942.EOF; <ParaValue>E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210330T171551_V20190617T225942_20190619T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210330T211516_V20190629T225942_20190701T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210330T211516_V20190629T225942_20190701T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T011528_V20190711T225942_20190713T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T011528_V20190711T225942_20190713T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T051626_V20190723T225942_20190725T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T051626_V20190723T225942_20190725T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T092024_V20190804T225942_20190806T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T092024_V20190804T225942_20190806T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T133354_V20190816T225942_20190818T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T133354_V20190816T225942_20190818T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T173435_V20190828T225942_20190830T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210331T173435_V20190828T225942_20190830T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210310T192752_V20190112T225942_20190114T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210310T192752_V20190112T225942_20190114T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210310T231958_V20190124T225942_20190126T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210310T231958_V20190124T225942_20190126T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T031229_V20190205T225942_20190207T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T031229_V20190205T225942_20190207T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T070624_V20190217T225942_20190219T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T070624_V20190217T225942_20190219T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T105526_V20190301T225942_20190303T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T105526_V20190301T225942_20190303T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T142647_V20190313T225942_20190315T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T142647_V20190313T225942_20190315T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T181341_V20190325T225942_20190327T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T181341_V20190325T225942_20190327T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T215910_V20190406T225942_20190408T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210311T215910_V20190406T225942_20190408T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T013719_V20190418T225942_20190420T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T013719_V20190418T225942_20190420T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T052231_V20190430T225942_20190502T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T052231_V20190430T225942_20190502T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T091107_V20190512T225942_20190514T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T091107_V20190512T225942_20190514T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T181439_V20190605T225942_20190607T005942.EOF; E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210312T181439_V20190605T225942_20190607T005942.EOF;
D:\micro\datas\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210314T041728_V20190909T225942_20190911T005942.EOF E:\MicroWorkspace\Micro\哨兵山西\orbits\S1A_OPER_AUX_POEORB_OPOD_20210314T041728_V20190909T225942_20190911T005942.EOF
</ParaValue> </ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>

View File

@ -42,7 +42,7 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>tar.gz</DataType> <DataType>tar.gz</DataType>
<ParaSource>Cal</ParaSource> <ParaSource>Cal</ParaSource>
<ParaValue>F:\MicroWorkspace\GF3A_nanjing\GF3_SAY_QPSI_011444_E118.9_N31.4_20181012_L1A_AHV_L10003515422.tar.gz</ParaValue> <ParaValue>E:\MicroWorkspace\GF3A_nanjing\GF3_SAY_QPSI_011444_E118.9_N31.4_20181012_L1A_AHV_L10003515422.tar.gz</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice> <EnMultipleChoice>False</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>
@ -57,7 +57,7 @@
<ParaType>File</ParaType> <ParaType>File</ParaType>
<DataType>tif</DataType> <DataType>tif</DataType>
<ParaSource>Cal</ParaSource> <ParaSource>Cal</ParaSource>
<ParaValue>F:\MicroWorkspace\GF3A_nanjing\dem_n.tif</ParaValue> <ParaValue>E:\MicroWorkspace\GF3A_nanjing\dem_n.tif</ParaValue>
<EnModification>True</EnModification> <EnModification>True</EnModification>
<EnMultipleChoice>True</EnMultipleChoice> <EnMultipleChoice>True</EnMultipleChoice>
<Control>File</Control> <Control>File</Control>

View File

@ -142,7 +142,7 @@ class CreateFeature:
return feature_tif_paths return feature_tif_paths
@staticmethod @staticmethod
def decompose_single_tar(hh_hv_vh_vv_list, workspace_processing_path, workspace_preprocessing_path, name, exe_dir, rows, cols, FILTER_SIZE = 3, debug =False ): def decompose_single_tar(hh_hv_vh_vv_list, workspace_processing_path, workspace_preprocessing_path, name, exe_dir, rows, cols, FILTER_SIZE = 3, debug =False, FeatureInput=['Freeman', 'Yamaguchi', 'Cloude']):
hh_hv_vh_vv_dic = {} hh_hv_vh_vv_dic = {}
hh_hv_vh_vv_dic.update({'HH': hh_hv_vh_vv_list[0]}) hh_hv_vh_vv_dic.update({'HH': hh_hv_vh_vv_list[0]})
hh_hv_vh_vv_dic.update({'HV': hh_hv_vh_vv_list[1]}) hh_hv_vh_vv_dic.update({'HV': hh_hv_vh_vv_list[1]})
@ -156,7 +156,7 @@ class CreateFeature:
cfeature.creat_h_a_alpha_features(t3_path, feature_tif_dir) cfeature.creat_h_a_alpha_features(t3_path, feature_tif_dir)
t3_path = cfeature.ahv_to_t3(workspace_processing_path, workspace_preprocessing_path, hh_hv_vh_vv_list, name, FILTER_SIZE) t3_path = cfeature.ahv_to_t3(workspace_processing_path, workspace_preprocessing_path, hh_hv_vh_vv_list, name, FILTER_SIZE)
flag, outFolderDic = cfeature.decompose(workspace_processing_path, name, t3_path, rows, cols, hh_hv_vh_vv_dic, FeatureInput=['Freeman', 'Yamaguchi', 'Cloude']) # , 'Touzi' flag, outFolderDic = cfeature.decompose(workspace_processing_path, name, t3_path, rows, cols, hh_hv_vh_vv_dic, FeatureInput) # , 'Touzi'
cfeature.cereat_features_dic(outFolderDic, feature_tif_dir) cfeature.cereat_features_dic(outFolderDic, feature_tif_dir)
return feature_tif_dir return feature_tif_dir

View File

@ -29,7 +29,7 @@
<GPU>无需求</GPU> <GPU>无需求</GPU>
</Environment> </Environment>
<Utility Satellite="GF3C" Sensor="MSS" Resolution="1" /> <Utility Satellite="GF3C" Sensor="MSS" Resolution="1" />
<Inputs ParameterNum="3"> <Inputs ParameterNum="4">
<Parameter> <Parameter>
<ParaName>AHVS</ParaName> <ParaName>AHVS</ParaName>
<ParaChsName>全极化影像集</ParaChsName> <ParaChsName>全极化影像集</ParaChsName>
@ -63,17 +63,36 @@
<Parameter> <Parameter>
<ParaName>box</ParaName> <ParaName>box</ParaName>
<ParaChsName>经纬度包围盒</ParaChsName> <ParaChsName>经纬度包围盒</ParaChsName>
<Description>经纬度包围盒SNWE。例子33.7548;33.7687;102.0734;102.0876 new不填写则使用影像相交区域作为包围盒38.171;38.1878;114.36567;114.39168</Description> <Description>经纬度包围盒SNWE。例子31.527611633687169;31.397153571335469;118.94152;119.02 new不填写则使用影像相交区域作为包围盒38.171;38.1878;114.36567;114.39168</Description>
<ParaType>Value</ParaType> <ParaType>Value</ParaType>
<DataType>string</DataType> <DataType>string</DataType>
<ParaSource>Man</ParaSource> <ParaSource>Man</ParaSource>
<ParaValue>31.527611633687169;31.397153571335469;118.94152;119.02</ParaValue> <ParaValue>empty</ParaValue>
<MaxValue>DEFAULT</MaxValue> <MaxValue>DEFAULT</MaxValue>
<MinValue>DEFAULT</MinValue> <MinValue>DEFAULT</MinValue>
<OptionValue>DEFAULT</OptionValue> <OptionValue>DEFAULT</OptionValue>
<NoDataValue>DEFAULT</NoDataValue> <NoDataValue>DEFAULT</NoDataValue>
<filePath>DEFAULT</filePath> <filePath>DEFAULT</filePath>
</Parameter> </Parameter>
<Parameter>
<ParaName>FeatureCombination</ParaName>
<ParaChsName>极化特征组合</ParaChsName>
<Description>可选极化特征组合一、共14种特征编号依次为0-13
Freeman表面散射p_s(0)、偶次散射p_d(1)、体散射p_v(2);
Touzi散射角α_s(3)、散射相位ϕ_α(4)、目标散射对称度τ(5)、相对能量λ_i(6);
Yamaguchi表面散射f_s(7)、二次散射f_d(8)、体散射f_v(9)、螺旋体散射f_h(10);
Cloude-Pottier分解散射熵H(11)、反熵A(12)、平均散射角α(13)</Description>
<ParaType>Value</ParaType>
<DataType>string</DataType>
<ParaSource>Man</ParaSource>
<ParaValue>0,1,2,7,8,9,10</ParaValue>
<EnModification>True</EnModification>
<EnMultipleChoice>True</EnMultipleChoice>
<Control>UploadInput</Control>
<InputType>Aux</InputType>
<InputNum>0</InputNum>
<DateFrom>Aux</DateFrom>
</Parameter>
</Inputs> </Inputs>
<Outputs ParameterNum="1"> <Outputs ParameterNum="1">
<Parameter> <Parameter>

View File

@ -55,6 +55,12 @@ class PhenologyMain:
self.processinfo = [1, 1, 1, 1] self.processinfo = [1, 1, 1, 1]
self._name_tr_dic = {} #l1a转换geo的对象 self._name_tr_dic = {} #l1a转换geo的对象
self.__FeatureMap = {}
# 特征索引对应的文件名
self.___FeatureFileNameMap = {}
# 初始化特征参数
self.__FeatureParaInit()
def check_source(self): def check_source(self):
""" """
检查算法相关的配置文件图像辅助文件是否齐全 检查算法相关的配置文件图像辅助文件是否齐全
@ -68,8 +74,11 @@ class PhenologyMain:
# 检查景影像是否为全极化 # 检查景影像是否为全极化
self.__input_paras = self.__alg_xml_handler.get_input_paras() self.__input_paras = self.__alg_xml_handler.get_input_paras()
if self.__check_handler.check_input_paras(self.__input_paras) is False: checkFlag, self.__parameters_dic = self.__check_handler.check_input_paras(self.__input_paras)
if checkFlag is False:
return False return False
# if self.__check_handler.check_input_paras(self.__input_paras) is False:
# return False
self.__workspace_path = self.__alg_xml_handler.get_workspace_path() self.__workspace_path = self.__alg_xml_handler.get_workspace_path()
self.__create_work_space() self.__create_work_space()
@ -161,6 +170,54 @@ class PhenologyMain:
rows = self.imageHandler.get_img_height(self.__preprocessed_paras[key]) rows = self.imageHandler.get_img_height(self.__preprocessed_paras[key])
return rows, cols return rows, cols
def __getInputFeatures(self):
"""
获取输入特征组合
1.Freeman表面散射p_s偶次散射p_d体散射p_v 对应序号[0,1,2]
2.Touzi散射角α_s散射相位ϕ_α目标散射对称度τ相对能量λ_i 对应序号[3,4,5,6]
3.Yamaguchi表面散射f_s二次散射f_d体散射f_v螺旋体散射f_h 对应序号[7,8,9,10]
4.Cloude - Pottier分解散射熵H反熵A平均散射角α 对应序号[11,12,13]
"""
decomposeList = self.__parameters_dic["FeatureCombination"].split(',')
stepSet = set()
featureInput = set()
for item in decomposeList:
stepSet.add(int(item))
for i in stepSet:
if 0 <= i < 3:
featureInput.add('Freeman')
elif 3 <= i < 7:
featureInput.add('Touzi')
elif 7 <= i < 11:
featureInput.add('Yamaguchi')
elif 11 <= i < 14:
featureInput.add('Cloude')
else:
logger.warning("__decomposeSteps Invalid data:%s!", i)
return featureInput
def __FeatureParaInit(self):
self.__FeatureMap["Freeman"] = [0, 1, 2]
self.__FeatureMap["Touzi"] = [3, 4, 5, 6]
self.__FeatureMap["Yamaguchi"] = [7, 8, 9, 10]
self.__FeatureMap["Cloude"] = [11, 12, 13]
self.___FeatureFileNameMap[0] = ['Freeman', "Freeman_Odd.bin"]
self.___FeatureFileNameMap[1] = ['Freeman', "Freeman_Dbl.bin"]
self.___FeatureFileNameMap[2] = ['Freeman', "Freeman_Vol.bin"]
self.___FeatureFileNameMap[3] = ['Touzi', "alpha.bin"]
self.___FeatureFileNameMap[4] = ['Touzi', "phi.bin"]
self.___FeatureFileNameMap[5] = ['Touzi', "tau.bin"]
self.___FeatureFileNameMap[6] = ['Touzi', "psi.bin"]
self.___FeatureFileNameMap[7] = ['Yamaguchi', "Yamaguchi4_Odd.bin"]
self.___FeatureFileNameMap[8] = ['Yamaguchi', "Yamaguchi4_Dbl.bin"]
self.___FeatureFileNameMap[9] = ['Yamaguchi', "Yamaguchi4_Vol.bin"]
self.___FeatureFileNameMap[10] = ['Yamaguchi', "Yamaguchi4_Hlx.bin"]
self.___FeatureFileNameMap[11] = ['Cloude', "anisotropy.bin"]
self.___FeatureFileNameMap[12] = ['Cloude', "entropy.bin"]
self.___FeatureFileNameMap[13] = ['Cloude', "alpha.bin"]
def create_feature_single_tar(self, name): def create_feature_single_tar(self, name):
key_list = [key for key in self.__preprocessed_paras.keys() if((name in key) and ('inc_angle' not in key) and ('LocalIncidenceAngle' not in key))] key_list = [key for key in self.__preprocessed_paras.keys() if((name in key) and ('inc_angle' not in key) and ('LocalIncidenceAngle' not in key))]
@ -186,7 +243,8 @@ class PhenologyMain:
cols = self.imageHandler.get_img_width(hh_hv_vh_vv_list[0]) cols = self.imageHandler.get_img_width(hh_hv_vh_vv_list[0])
rows = self.imageHandler.get_img_height(hh_hv_vh_vv_list[0]) rows = self.imageHandler.get_img_height(hh_hv_vh_vv_list[0])
feature_dir = CreateFeature.decompose_single_tar(hh_hv_vh_vv_list, self.__workspace_processing_path, self.__workspace_preprocessing_path, name,self._env_str, rows, cols, FILTER_SIZE=3, debug=DEBUG) featureInput = self.__getInputFeatures()
feature_dir = CreateFeature.decompose_single_tar(hh_hv_vh_vv_list, self.__workspace_processing_path, self.__workspace_preprocessing_path, name, self._env_str, rows, cols, FILTER_SIZE=3, debug=DEBUG, FeatureInput=featureInput)
# 获取训练集提取特征的信息 # 获取训练集提取特征的信息
ids = [] ids = []