전체 글

😼 Github : https://github.com/Mingyum-Kim
Major Study/Artificial Intelligence Application

Python 기본 문법 정리

def add(x, y): return x + y; add(1, 2); # 3 파이썬에서 함수 정의 (lambda x, y : x + y) (10, 20) # 30 람다 형식을 이용해 이렇게 표현할 수 있음. lambda (매개변수) : (실행문) t = lambda x : x * 2 + 1 t(6) # 13 t = lambda x : print("test : {}".format(x+3)) 반복문 for문은 list형 자료 작성 시에도 활용 가능하다. x = [i ** 2 for i in range(10)] x # [[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] while문으로 커피가 떨어지면 판매를 중단하고 "판매 중지"라는 문구를 보여준다. coffee = 5 money = 300..

Major Study/Digital Image Processing

주파수 영역 필터링(Filtering in Frequency Domain)

영상 신호의 주파수 영역에서 분석하여 공간 영역에서 잘 보이지 않던 정보를 쉽게 발견할 수 있다. Fourier Transform은 time domain에서의 영상을 frequency domain으로의 성분으로 변환하는 것이다. 즉 임의의 입력 신호를 다양한 주파수를 갖는 주기함수들의 합으로 분해하여 표현하는 것이다. 이 푸리에 변환으로 F(w) 스펙트럼을 얻을 수 있고 w는 실수부와 허수부로 구성된다. 이를 Specturm 또는 magnitude라고 부르고, F(w)의 각도 Φ를 phase angle(또는 phase spectrum)라고 부른다 . Discrete Fourier Transform 2D DFT Mat doDft(Mat src_img) { Mat float_img; src_img.conve..

Langauge/Java

자바의 정석 Chapter12. 지네릭스, 열거형, 애너테이션

지네릭스 : 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입 체크 (Compile-time type check) 기능이다. 타입 안정성 제공, 타입체크와 형변환을 생략할수 있어 코드가 간결해지는 장점이 있다. public class Box { T item; void setItem(T item) { this.item = item; } T getItem(){ return item; } } 객체 생성 시 타입 변수 T에 따로 타입을 지정한 상태에서 지네릭 클래스를 사용하여야 한다. Box b = new Box(); b.setItem("ABC"); b.setItem(new Object()); 지네릭스의 제한된 역할로 Box를 생성할 경우, 모든 객체에 대해 동일하게 동작하는 static..

Major Study/Artificial Intelligence Application

선형 회귀(Linear Regression)의 개념과 Prediction

Regression Model Parameters (Learnable) 컴퓨터 내부에서 모델이 스스로 목표를 세우기 위해서 바꿔가는 Key의 값이다. 즉 HyperParameters와 동일하게 변경되는 값이 모델의 정확도에 영향을 미치지만, 사용자가 직접 선택하지 않고, 최적의 답안을 추론해내가며 모델이 직접 학습한다. Linear Regression (선형 회귀) Classification이 Input Data의 Label를 맞추는 것이 답안이었다면 Linear Regression의 경우 Input된 데이터를 기반으로 직선을 그어 수식을 만들어서 특정 Input x에 대해 y를 예측할 수 있다. 선형 회귀 역시 Supervised Learning의 일종이다 트레이닝 데이터셋은 (x, y)처럼 좌표값처럼..

Major Study/Artificial Intelligence Application

Supervised Learning(지도 학습)의 개념

Machine Learning vs Deep Learning 1) Machine Learning은 Feature extraction을 기본적으로 거쳐 Feature vector로 바꾼 후 Classfication / Regression을 수행한다. 2) Deep Learning에서는 Feature extraction과 Classification을 동시에 수행하여 Output을 도출한다. 여기서 사용하는 방법론은 Deep Neural Network. 컴퓨터가 스스로 분류 레이블을 만들어내고, 반복학습 사전학습 하여 알고리즘을 만들어낸다. . Supervised Learning이란, Input data와 Label을 모두 입력으로 받아 모델을 학습시켜, 새로운 데이터를 받아 Evaluation을 진행할 때 ..

Major Study/Digital Image Processing

C++을 이용한 선형 필터링(Linear Filtering ) 구현하기

Linear Fileter(선형 필터링) 마스크를 주어진 영상 위에서 이동하면서 처리하는 방식이다. Filter는 마스크와 함수를 결합한 것으로, 마스크는 일반적으로 양변의 길이가 모두 홀수인 직사각형 행렬을 말한다. 즉 마스크를 이용해서 영상을 덮어서 영상의 일부분을 한정해서 영역을 산정할 수 있는 어떠한 영상을 의미함! 이렇게 마스크와 함수가 결합한 형태를 필터(Filter)라고 하고, 필터링 과정에서 마스크가 사용된다. Mat myCopy(Mat srcImg) { int width = srcImg.cols; int height = srcImg.rows; Mat dstImg(srcImg.size(), CV_8UC1); //입력한 영상과 동일한 크기의 Mat 생성 uchar* srcData = srcI..

Langauge/Java

Java의 정석 Chapter10. 날짜와 시간 & 형식화 / Chapter11. 컬렉션 프레임워크

Chapter10 날짜와 시간 & 형식화 SimpleDateFormat parse(String source) : source문자열을 날짜 데이터의 형식으로 변환해준다. MessageFormat 데이터를 정해진 양식에 맞게 출력하도록 변환 Instant 에포크 타임부터 경과된 시간을 나노초 단위로 표현 Chapter11 컬렉션 프레임워크 : 데이터 군을 저장하는 클래스들을 표준화한 설계 Collection 인터페이스 List 인터페이스 Set 인터페이스 Map 인터페이스 key, value로 이루어진 컬렉션 클래스를 구현하는 데 사용되는 인터페이스 HashTable, HashMap, SortedMap, TreeMap 등의 구현체가 있다. HashMap은 key와 value를 묶어서 하나의 데이터(Entry..

Framework/Spring

Spring 첨부파일 다운로드 코드 리팩토링

2022.03.05 - [Web Development/스프링\JPA] - Spring 첨부파일 다운로드 구현하기 Spring 첨부파일 다운로드 구현하기 첨부파일이 이미지인 경우, 클릭했을 때 화면에 크게 원본 파일을 넘겨줘야 하고, 일반 첨부파일인 경우에는 다운로드를 기본으로 실행해야 한다. MIME 타입이란? https://developer.mozilla.org/ko/docs/Web/ mingyum119.tistory.com 위의 게시물의 코드를 리팩토링한 과정을 기록해보겠다! 참고한 사이트 : todyDev :: Spring 개발 - 게시판 만들기 #첨부파일 다운로드 (tistory.com) Spring 개발 - 게시판 만들기 #첨부파일 다운로드 이전 게시글에서 파일을 업로드했다면, 이번에는 업로드된..

Framework/Spring

[IBAS] 첨부파일 업로드(FileService, FileController) WebMvcTest

첨부파일 업로드 테스트 먼저 윈도우 서버에 첨부파일을 업로드하는 Service 계층의 테스트를 진행해보았다. ServerFileService의 upload method public List uploadFile(List uploadFile) { List fileDtoList = new ArrayList(); String uploadFolder = "C:\\upload"; String uploadFolderPath = getFolder(); File uploadPath = new File(uploadFolder, uploadFolderPath); if (uploadPath.exists() == false) { uploadPath.mkdirs(); } for (MultipartFile multipartFile..

MINGYUM
코딩하는 겸