위성영상 자료를 이용해서 머신러닝과 딥러닝을 실행하기 위해서 입력자료의 크기나 구조를 고려해야 하는데 이때 유용하게 사용할 수 함수이다 numpy.stack ( arrays, axis=0, out=None ) 여기서, arrays는 넘파일 배열자료 axis는 넘파일 배열 자료를 쌓는 방법인데 0은 행방향으로, 1은 열방향으로, 2는 3차원 z축방향으로 배열 자료른 쌓는다. 예제1 import numpy as np new_arr = np.array([[45,67],[98,23]]) new_arr2 = np.array([[890,123],[45,95]]) result= np.stack((new_arr,new_arr2),0) print(result) 예제 1 결과 예제 2 import numpy as np r..
센티넬 위성자료는 다음그림처럼 13개 밴드로 구성되며 식생지수와 관련된 밴드는 적외선 밴드 3과 근적외선 밴드 8이다. 다음 그림은 식생상태와 식생지수와 관계를 보여주는데 식생지수 값이 0에서-1은 죽은 식물 상태를, 0에서 0.33은 건강하지 못한 식물 상태를, 0.33에서 0.66은 일반적을 건강한 식물 상태를, 0.66에서 1은 아주 건강한 식물 상태라는 것을 의미 하지만 지역적인 환경에 따라 식생지수값은 다소 달라질 수 있다. 식생지수 NDVI 계산식은 아래 식과 같이 근적외선 밴드의 반사율에서 적색광 밴드의 반사율을 뺀 값을 합산한 것으로 나누는 것이다. (nir -red)/(nir+red)
파이썬 코딩을 이용해서 머신러닝과 딥러닝을 하기 위해서 데이터는 숫자형이어야 할 때가 많다. 특히 설명변수(독립변수)가 범주형 변수일 때 숫자형 변수로 변환하기 위해서는 원 핫 인코딩을 해야한다. 대상변수(종속변수)가 0과 1의 이진변수이거나 범주형일 때 레벨 인코딩을 해야 한다. 예를 들어 사과, 수박, 참외, 복숭아 등 4개로 범주형 자료가 있을 때 label encoding 은 다음처럼 실행한다. from sklearn.preprocessing import LabelEncoder fruit =['사과', '수박', '참외', '복숭아', '사과','참외' ] le = LabelEncoder() fruit_labelencoding = le.fit_transform(fruit) print(fruit_l..
이번 글은 딥러닝을 이용하여 분류문제를 해결하는 아주 기초적인 코딩을 설명한다. 이 코딩으로부터 모델을 점점 개선한다. 입력데이터는 인디언 당뇨병에 관한 자료를 이용하는데 전체적으로 9개 변수로 구성된다. 처음 부터 8개 변수는 당뇨병과 직접 또는 간접적으로 관련이 있다. 피마 인디언 당뇨병 데이터의 독립변수 8개는 아래와 같이 구성되어있다. Pregnancies: 임신 횟수 Glucose: 포도당 부하 검사 수치 BloodPressure: 혈압(mm Hg) SkinThickness: 팔 삼두근 뒤쪽의 피하지방 측정값(mm) Insulin: 혈청 인슐린(mu U/ml) BMI: 체질량지수(체중(kg)/키(m))^2 DiabetesPedigreeFunction: 당뇨 내력 가중치 값 Age: 나이 종속변수..
전복 나이를 예측하는 문제는 동일한 입력자료에 대해서 종속변수를 숫자 값이나 클래스 레이블로 모두 예측할 수 있어야 한다. 이를 해결하기 위한 접근 방식은 동일한 입력데이터에 대해 회귀 및 분류 예측 모델을 모두 개발하고 모델을 순차적으로 사용하는 것입니다. 또 다른 방법으로는 동일한 입력 데이터를 이묭해서 숫자 및 클래스 레이블 값을 모두 예측할 수 있는 단일 신경망 모델을 개발하는 것입니다. 이를 다중 출력 모델이라고 하며 Keras 및 TensorFlow와 같은 최신 딥 러닝 라이브러리를 사용하여 비교적 쉽게 개발하고 평가할 수 있다. 이 글에서는 회귀 및 분류 예측을 결합한 신경망을 개발하는 과정을 설명합니다. 1. 자료 설명 전복 데이터 세트 실습데이터로 '전복' 데이터셋을 사용할 것입니다. 전..
해발고도를 나타내는 DEM(수치고도모델) 자료를 통해서 특정 해당지역의 높이값을 추출하는 방법을 설명한다. 1. 래스터 파일을 다루는 python 패키지 rasterio 불러오기 import rasterion as rio 2. DEM 파일 경로 저장하기 dem_path= "c:/python_work/gis_data dem_file_name = "dem.tif" dem_file_path = dem_path + "/" + dem_file_name 3. rasterio 패키지를 이용해서 dem 파일 불러오기 dem_data = rio.open(dem_file_path) dem_data.count dem_data.height dem_data.width dem_data.crs x = 127.000000 y = 3..