소개 ¶
- Object Programming 수업의 숙제를 위한 페이지입니다
http://zeropage.org/~mulli2/Athena/Logo.bmp |
- 그리스 로마 신화에 나오는 지혜의 여신 "아테나" 입니다. 지혜롭게 프로그래밍을 하고자 만든 이름입니다...^^
DeleteMe 이름은 좋습니다. 하지만 Athena 라는 이름의 페이지에는 여신 아테나에 대한 정의와 소개가 들어 있는 것이 올바른 것이겠지요. 그래서 ProjectPrometheus, ProjectZephyrus 라고 한거랍니다. --neocoin
일정 ¶
11월 15일 금요일 ¶
- 3시 ~ 8시 - 첫 회의와 비트맵 열기와 출력 (5시간) - 명훈,재동
- 첫 회의 - 프로젝트 이름 결정, 기본 코딩 스타일 결정, 첫 PairProgramming 호흡
11월 17일 일요일 ¶
- 비트맵 공부 (3시간) - 명훈
11월 18일 월요일 ¶
- 복잡했던 소스 처음부터 다시 짬 - 재동 (30분)
11월 19일 화요일 ¶
- 코딩 스타일 변경
- 5시반 ~ 7시반 히스토그램 작성 (2시간) - 명훈, 재동
- 9시반 ~ 1시까지 히스토그램 작성(3시간30분) - 명훈
- Quntization 완성 & Look-Up Table 사용 쉽게 해놓았습니다. (1시간) - 재동
11월 20일 수요일 ¶
- 통합 - 명훈, 재동 (20분)
- 상수를 이용한 영상 밝기 변화 (1시간 20분) - 명훈, 재동
11월 21일 목요일 ¶
- 히스토그램 그릴 때 깨끗한 선이 그려지지 않음(윈도우상 픽셀의 한계)
- 상수를 이용한 영상 밝기 변화 다이얼로그 작성(20분) - 명훈
- 통합 (20분) - 재동, 명훈
- 열심히 Look Up Table 끝냄 (3시간) - 재동
11월 23일 토요일 ¶
- 영상을 이용한 영상 밝기 변화 다이얼로그 작성(3시간) - 명훈
- 나눗셈할때 오류 수정(20분) - 명훈
(영상을 이용한 변환에서 0이 있는 영상의 경우 나눗셈할수 없음. 1로 나눌때랑 같게 했음)
- Contrast Stretching 작성(20분) - 명훈
- 정수 나눗셈에서 나머지버림때문에 삽질(20분) - 명훈
- 선택영역 변환시 영역과 배열사이의 관계에서 막힘(2시간) - 명훈
(비트맵은 가로에서 세로배열이 맞는데 밑바닥에서부터 배열이 시작됨)
- 선택된 영역에서만 영상변화 시키기(2시간) - 명훈
- 통합 (20분) - 재동
- 입력 다이얼로그2 만들고 연결하기 (20분) -재동
- 입력 다이얼로그2 버그 고치기 (1시간) - 재동
11월 25일 월요일 ¶
- Histogram Equlisation (30분) - 명훈
- 입력 다이얼로그2 버그 고치기 (20분) - 재동
- 참신한 아이디어에 관한 회의 (30분) - 명훈, 재동
11월 26일 화요일 ¶
- 참신한 아이디어 1번 작성- 스크린캡쳐기능(1시간30분) - 명훈
- contrast stretching할때 입력값 받지않는 것으로 수정(20분) - 명훈
- 마우스좌표를 바이트배열좌표로 변환(2시간) - 명훈
- 컬러도 변환되게 바꿈(2시간) - 명훈
- 마스크 몇 개 만듬(3시간) - 재동
- 팝업메뉴 띄우는 방법공부(30분) - 명훈
11월 27일 수요일 ¶
- 팝업메뉴 띄울때 클라이언트영역좌표를 전체스크린 좌표로 변환 작업(30분) - 명훈
- 나머지 마스크 만듬(30분) - 재동
11월 28일 목요일 ¶
- LUT그래프 다이얼로그 작성(1시간30분) - 명훈
- 통합 및 리펙토링(2시간30분) - 재동, 명훈
- LUT그래프에 LUT제목표시 노가다(1시간) - 명훈
11월 29일 금요일 ¶
- 통합(1시간 반) - 재동
- 영상을 이용한 변환에서 버그 수정(30분) - 명훈
- 컬러구현에 대한 마스크 적용하기(3시간) - 재동, 명훈
- Edge 디텍션 메뉴빼고 나머지 다했음(1시간30분) - 명훈
- Mask 기능 몆 개 다시 구현 & 리펙토링 & 주석 달기 (2시간30분) - 재동
11월 30일 토요일 ¶
- 방향다이얼로그 및 LUT다이얼로그 수정(10분) - 명훈
- 리펙토링 주석 달기, 버그 잡기(3시간 반) - 재동, 명훈
12월 1일 ¶
- 아이디어 기능 삽질 (2시간) - 재동
12월 2일 ¶
- 설명서 작성(2시간) - 재동, 명훈
Work ¶
Did ¶
가. 기본 기능
- 1. BMP 파일 읽고 저장
- 1.1 BMP 파일 읽기
- 1.2 현재 화면과 결과 화면을 BMP 파일로 저장
- 1.1 BMP 파일 읽기
- 2. 영상 획득
- 2.1 Sampling => 모자이크 이미지
- 2.2 Quntization => 2, 4, 16, 256 가지 명암으로 표시
- 2.1 Sampling => 모자이크 이미지
- 3. 영상 명암 변환 - 1
- 3.1 히스토그램
- 3.1.1 일반 히스토그램
- 3.1.2 누적 히스토그램
- 3.1.1 일반 히스토그램
- 3.1 히스토그램
- 4. 영상 명암 변환 - 2
- 4.1 상수를 이용한 영상 밝기 변화
- 4.2 다른 영상을 이용한 영상변화
- 4.1 상수를 이용한 영상 밝기 변화
- 5. 영상 명암 변환 - 3(Look-Up Table 이용)
- 5.1 Null
- 5.2 Negative
- 5.3 Gamma Correction
- 5.4 Contrast Stretched
- 5.5 Compression
- 5.6 Posterizing
- 5.6.1 Level posterize
- 5.6.2 Thereshold
- 5.6.3 Bounded
- 5.6.1 Level posterize
- 5.7 Clipping
- 5.8 Iso-intensity Contouring
- 5.9 Range- highlighting
- 5.10 Solize using a Threshold
- 5.11 Parabola
- 5.11.1 First Parabola
- 5.11.2 Second Parabola
- 5.11.1 First Parabola
- 5.1 Null
- 6. Convolution(회선)
- 6.1 Blurrung
- 6.1.1 3*3 Mask
- 6.1.2 5*5 Mask
- 6.1.1 7*7 Mask
- 6.1.1 3*3 Mask
- 6.2 Sharpening
- 6.3 Edge Detection
- 6.3.1 Sobel (8방향)
- 6.3.2 Prewitt (8방향)
- 6.3.3 유사 연산자
- 6.3.4 차 연산자
- 6.3.1 Sobel (8방향)
- 6.4 Embossing
- 6.5 Median Filtering
- 6.1 Blurrung
- 7. 영상 질 향상
- 7.1 Contrast Stretching
- 7.2 Histogram Equlisation
- 7.1 Contrast Stretching
- 8. 윈도우로 설정한 영역에 대해서만 '7.영상 질 향상' 적용