*기*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 2
검색어 입력폼
  • [프로그래밍] 디지털 영상 처리 프로그램 평가A좋아요
    PC카메라를 통한 영상처리 프로그래밍(Digital Image Processing By PC Camera)목 차1. 작품의 목표 -------------------------------------------- 12. 작품 제작 과정 ----------------------------------------- 23. 작품의 구성 -------------------------------------------- 3가. 작업 환경 ------------------------------------------------ 3나. PC 카메라 제어부 ----------------------------------------- 3다. 영상 처리부 ---------------------------------------------- 54. 부 록 ---------------------------------------------- 7가. 디지털 영상 처리 ---------------------------------------- 7나. 비트맵에 대한 소개 -------------------------------------- 9다. 컬러 영상 처리 ------------------------------------------ 15라. 소스 프로그램 ------------------------------------------- 22※ 참고문헌 ---------------------------------------------- 29I. 작품의 목표가. 영상처리 프로그램을 제작한 이유최근 들어 디지털 카메라, 핸드폰 카메라, PC 카메라 등의 대중화와인터넷 문화의 급속한 발전으로 사진 영상에 대한 관심이 대두되고있다. 이에 우리 팀에서는 이러한 사진영상을 PC 카메라로 제어,저장하고 이 파일을 영상 처리 하는 부분에 관심을 갖고 프로그램을 제작하게 되었다.서두에 제시한 것 이외에도 사회 여러 분야에서 디지털 영상처리기술을 도입한 많은 시스템들이 사용되고 있고, 얼굴을 인식하여 현금을인출하여 주는ger나. PC 카메라 제어부PC 카메라를 제어하는 방법에는 VFW(Video for Windows)를 이용하는방법, DirectX Media - DirectShow를 이용한 방법 등이 있다.1) Video for Windows윈도우에서 비디오 캡처의 표준으로써 뛰어난 호환성을 자랑하지만세부설정이 안 된다.2) DirectShow배우기 어려운 방법으로, 많은 일반적 작업들도 추가적 프로그램을필요로한다.3) 로지텍 퀵캠 SDK 활용카메라의 모든 특성을 제어할 수 있고 여러가지 편리한 점을 제공하지만 로지텍 카메라 제품에서만 작동한다는 한계점을 가지고 있다.위 방법중에서 우리는 세세한 세부설정이 되지 않지만 컴퓨터 환경에따라 편차가 적은, 가장 좋은 호환성을 나타내는 VFW 방법을 택하였다.? VFW(Video for Window)- VFW는 Microsoft사에서 기본적으로 제공하는 영상녹화 라이브러리이다. 우선 vfw32.dll에서 기본으로 제공하고 있는 함수 중 중요한 함수2가지는 캡쳐 윈도우를 생성해주는 capCreateCaptureWindow()와captureDriver의 버전 정보를 가져다주는 capGetDriveDescription() 이다.- 캠을 화면에 표시해주는 순서① 캡처된 화면을 보여줄 윈도우 영역 지정m_HostVideo.GetWindowRect(), ScreenToClient()② 비디오캡처 윈도우를 지정된 영역에 생성capCreateCaptureWindow();③ 캡처 윈도우와 드라이버 연결capDriverConnect()④ 캡처윈도우에 프리뷰 모드로 보여줌capPreview(), capPreviewRate(), capPreviewScale()여기까지 설정함으로써 호스트 화면에 카메라를 통한 캡쳐된 이미지를디스플레이 한다.⑤ 콜백 함수의 호환을 위해서 비디오 포맷 설정capSetVideoFormat(m_hwndCap, &m_BmpInfo, sizeof(BITMAPINFO))⑥ 캡처되는 이미지의 정보를 얻어냄capGetVideoFormat 필터를 사용하여 영상의 경계를 또렷하게 보이게 만드는 처리이다. 흑백 영상과는 달리 컬러 영상의 경우 R, G, B의 세 개의 채널이 존재하므로 각 채널을 분리한 후, 필요한 채널에 선명화 필터를 가한 후, 다시 재결합하는 것과 같은 처리가 필요하다. 컬러 영상 선명화의 절차는 다음과 같다.① RGB 모형에서 HSI 모형으로 변환한다.② 명도 채널에 대해서만 필터를 이용하여 선명화를 수행한다.③ 선명화된 명도 채널과 H, S 채널로부터 다시 RGB 모형으로 변환한다.6) 컬러 영상의 이진 처리이진 영상처리는 0과 1의 두가지 값으로 정보를 인식하여 처리하는 기법으로물체를 인식하거나 영역을 분할하는데 사용한다.컬러 이진 영상 처리를 하기 위해 R, G, B 세 개의 채널 각각에 대한이진화를 수행한뒤 다시 컬러 영상을 재생하도록 프로그래밍 한다.5. 부 록가. 디지털 영상 처리1) 디지털 영상처리(Digital Image Processing)란 사진 정보(아날로그정보)를 “디지털 정보”로 전환한 후, “디지털 컴퓨터”에서처리한다는 의미이다. 디지털 영상처리 시스템의 입력과 출력모두는 디지털 영상이다.2) 디지털 영상 데이터의 흐름- 영상의 취득 : 디지털 영상처리를 위해서는 먼저 디지털 형태로표현된 영상데이터를 얻어야 한다. 디지털 영상데이터를 얻기위해서는 사진을 스캔하거나, 디지털 카메라나 캠코더를이용하여 영상을 찍은 후 컴퓨터로 전송하거나, 아날로그 카메라를통해 입력된 영상데이터를 A/D 변환 보드를 통해 컴퓨터로 전송해야한다. 영상 데이터용 A/D 변환기를 프레임 그레버(Frame Grabber)라고 한다.< 그림 A 영상 데이터의 흐름 >- 영상의 편집 및 처리 : 영상 획득장치에 의해 컴퓨터로 전송된영상 데이터는 디지털 영상데이터로 전환되어 PC에서 가공된다. 디지털영상 편집을 위한 상업용 도구들로 유명한 것들로는 Adobe Photoshop과JASC의 Paintshop 등이 있다. 입력된 영상들은 사용 용도에 맞게 PC에서처리되며 전자출판을 위한 영상밝기를 나타내는 정수값으로 이루어져 있음을 알 수 있다.< 그림 C 흑백영상의 예와 내부 값 >나. 비트맵에 대한 소개PC 카메라를 사용하여 받아들인 영상데이터를 저장하는 형식으로는 비트맵형식을 사용하였으므로 이에 대해 알아 보겠다.1) 장치 독립 비트맵비트맵에는 DDB와 DIB가 있다. DDB(Device Dependent Bitmap)는 디바이스에종속적인 비트맵이고 DIB(Debice Independent Bitmap)는 디바이스에 독립적인비트맵이다.< 그림 D >은 WindowsXP의 디스플레이 등록정보를 보여주고 있다. 현재화면이 픽셀당 16비트인 하이컬러로 표현되도록 설정되어 있다. 화면상의한 픽셀에서 표현 가능한 컬러 수는개 라는 얘기이다. 따라서 DDB도 한 픽셀당 16비트로 표현되도록 설정된다. 디바이스 종속이라는의미는 한 픽셀이 몇 비트로 표시될 것인지가 미리 설정된 화면 설정에종속적이라는 의미이다. 영상 출력은 화면 설정에 따라 다니는 것이 된다.< 그림 D WindowsXP의 디스플레이 등록정보 >이와는 상대적인 개념으로 DIB는 화면 설정과는 무관하게 나름대로의 색상을표현하는 비트맵으로 이를 디바이스 독립적인 비트맵 DIB이라 한다. 우리가다루는 보통의 영상 파일들은 대부분 DIB 형식의 파일들이다. 즉, 흑백영상은 어떤 컴퓨터에서 보던 흑백영상이 나오고, 컬러 영상은 어떤 컴퓨터에서나 컬러로 나오게 된다. 장치에 무관하게 영상 자체의 정보로 흑백이나 컬러의 표현이 결정되게 된다.2) 비트맵 영상의 컬러 표현비트맵 영상의 단위 픽셀 색은 파일에 따라 정밀도가 다르다. 각각의 파일마다 내부적으로 하나의 픽셀을 몇 비트로 표현하는가에 대한 정보를 가지고 있고, 이에 따른 다양한 컬러모드가 존재한다.- 트루 컬러 모드 : 영상의 단위 픽셀이 24비트를 가진다. R, G, B가 각각 8비트 씩을 가지고 있으므로 한 픽셀당 24비트를 사용한다. 당연히 영상파일의 크기는 커지게 되나 픽셀에서 표현 가능한 컬러의 수는만 컬러가 되므로 최고의 컬러수로 수행하지 않으며 헤드가 있는 여러 형식의 파일중에서 구조가 가장 간단하다.< 그림 G BMP 파일 헤드를 구성하는 구조체 변수들 >- 비트맵 파일에 대한 정보(파일 헤드) : “파일 자체”의 정보를 저장하고있는 구조체로써 다음과 같이 미리 정의가 되어 있다. 사용자는 단지 구조체변수를 선언해서 사용만 하면 된다.typedef struct tagBITMAPFILEHEADER{WORD bfType; // "BM"이라는 값을 저장함DWORD bfSize; // 바이트 단위로 전체파일 크기WORD bfReserved1; // 예약된 변수WORD bfReserved2; // 예약된 변수DWORD bf0ffBits; // 영상 데이터 위치 까지의 거리} BITMAPFILEHEADER;오픈한 파일이 비트맵 파일인지 아닌지 확인하기 위한 변수가 bfType이다. BMP 파일의 처음 두 바이트는 항상 “BM" 문자가 저장되어 있다.bfReserved1과 bfReserved2의 두 변수는 혹시 미래에 추가할 정보가 있을지 대비하기 위해 미리 예약해 놓은 변수이다. bfOffBits는 파일 시작부분에서 실제 영상데이터가 존재하는 위치까지 바이트 단위의 거리를 나타낸다.오프셋(offeset)이라고 한다. WORD는 2바이트(unsignes short), DWORD는4바이트(unsigned long) 변수를 나타낸다.- “영상 자체“에 대한 정보(영상 헤드) : 비트맵 영상에 대한 크기나흑백 ? 컬러정보, 팔레트 크기 정보 등을 저장하기 위하여 파일헤드 바로typedef struct tagBITMAPINFOHEADER{DWORD biSize; // 이 구조체의 크기LONG biWidth; // 픽셀 단위로 영상의 폭LONG biHeight; // 영상의 높이WORD biPlanes; // 비트 플레인 수(항상 1)WORD biBitCount; // 픽셀당 비트수(컬러, 흑백 구별)DWORD biCompression; // 압축 유무DWORD biSizeImage; // 영상의 크기(i
    공학/기술| 2005.06.19| 32페이지| 1,000원| 조회(3,510)
    미리보기
  • [디지털설계] 디지털 시계 설계 평가B괜찮아요
    Altera Chipset을 이용한 Digital Watch 설계담당교수 :학 과 :학 번 :성 명 :********************** 목 차 **********************I. 서 론II. 본 론1. 개 요2. 프로그램 설계1) Basic Part2) Mode Select Part3) Watch Part4) Stopwatch Part5) Out Part※ 최종 프로그램 시뮬레이션3. 하드웨어 구현4. 완성된 Digital WatchIII. 결 론1. 결 론2. 느낀 점※ 참고 문헌************************************************************- -I.서론현대 사회는 정보화 사회이다. 얼마만큼 빠르게 정확한 정보를 획득하는가 여하에 따라 경쟁력이 구분되는 사회 인 것이다. 이러한 사회 양상의 이면에는디지털이라는 용어가 빠지지 않는다. 가장 쉬운 예로 거의 매일 접하는TV, 오디오 기기, 컴퓨터, 카메라 등 많은 것들이 기존의 아날로그 형태에서디지털화 되어 쉽고 편하게 사용되어지고 있다.그렇다고 해서 디지털이 모든 면에서 우수한 것은 아니다. 모든 현상에양면이 있듯이 아날로그 방식에 비해서 떨어지는 부분도 있다. 하지만공학에서 말하는 외부적인 요인(noise 등)에 대해서도 같은 상태 유지가되어 획득한 정보의 보존과 저장, 그리고 정확성이 뛰어나므로 추구한 방향은역시 디지털 방식이며 앞으로도 지향될 것이다.이에 Altera사의 Max PlusII 툴의 스키메틱 코딩 방법과 FLEX10K(EPF10K10LC84-4)칩을 이용하여 우리 일상에서 가장 쉽게 접할 수 있는 시계에 초점을 맞추어디지털 시계를 디자인하고 하드웨어로 구현해 보았다. 앞으로의 내용은 디지털시계의 기초적인 설계에서부터 하드웨어 제작까지 일련의 과정을 상세하게 나타내었다.디지털화, 집적화를 추구하는 흐름에 맞추어 엔지니어로써 능력을 배양하게된다.Digital WatchII. 본 론1. 개 요설계에 앞서 디지털 시계의 기본적인 기능에 대해OD6 카운터의 회로도와 Wave form은 아래와 같다.130ns 전 까지는 10진 카운터의 MSB가 set 되지 않은 상태이고, 카운터는 0~5 까지 카운트 한다.- MOD10 동기식 카운터(10진 카운터)이 회로는 초, 분 카운터에서 6진수와 같이 쓰이며 MSB가 6진 카운터 Clock 입력으로 들어간다. 스톱워치에서는 두 개 십진 카운터를 이용한 분주기로 1/100 단위까지 카운터 하고 6진 카운터와 연결되면서 초를 카운터 하게 되며 MOD10 카운터의 상태표와 카르노맵을 이용한 DFF(D 플립플롭)의여기표는 아래와 같다.계수 표시COUNTDFFD C B AD+ C+ B+ A+00 0 0 00 0 0 110 0 0 10 0 1 020 0 1 00 0 1 130 0 1 10 1 0 040 1 0 00 1 0 150 1 0 10 1 1 060 1 1 00 1 1 170 1 1 11 0 0 081 0 0 01 0 0 191 0 0 10 0 0 0CDAB000111100001X0010XX0110XX11000X0CDAB000111100000X1010XX1111XX01000X1D+ = A'D + ABC C+ = A'C + B'C + ABC'CDAB000111100000X0011XX1110XX01010X1CDAB000111100011X1011XX1110XX01000X0B+ = A'B + AB'D' A+ = A'MOD10 카운터의 회로도와 Wave form은 아래와 같다.- MOD12 동기식 카운터(12진 카운터)이 회로는 1에서 12까지 카운트 하는데 여기서 Mod6 나 Mod10에 비해 틀린것은 1부터 카운트를 시작하는 것과 10이 되면 MSB는 set되고 나머지 비트들은클리어 되어 다시 카운트하게 된다. 즉 10, 11, 12 일때는 MSB가 세트가되게 하며, MOD12 카운터의 상태표와 카르노맵을 이용한 DFF(D 플립플롭)의 여기표는 아래와 같다.계수 표시COUNTDFF출 력D C B AD+ C+ B+ A+Q4 Q3 Q2 Q1 Q000 0 0 00 0 0 *************1285B31001111274F*************1101101356D61111100X7C70000111X0781111111X7F91100111X67 BCDDRV, MD6DRV의 회로도와 Wave form은 아래와 같다. 차례로 비교해보면 위에 있는 7-SEGMENT 분석표에 나와 있는데로 올바르게 동작하는 것을확인 할 수 있다.2) Mode Select Part(시계의 동작 모드를 결정하는 회로)초기 모드는 시계모드 상태이며 SW1에 따라 시계, 스톱와치, 동작선택모드로 변화 시켜 주는 회로로 1번에서 발생한 주파수 중 100HZ의 출력을회로의 CLK으로 하여 동작한다. 시계 모드 SW1을 한번 눌러 스톱와치 모드로전환하고 SW2,SW3의 입력을 통해 스톱와치를 START,STOP 시키고 RESET 시킨다.SW1을 다시 한번 누르면 모드는 시간 조정 모드로 전환되고 SW2,SW3을 통해시간과 분을 선택하고 변경할 수 있다. 시간과 분을 정확하게 SETTING 후 SW1을 다시 누르면 시계 동작 모드로 복귀한다.아래의 표는 Modsel에서 스위치의 입력에 따른 동작과 기능을 나타낸다.순? 서스위치 입력동 작 모 드동 작 설 명SW1SW2SW31???일반시계전원 입력시 일반 시계 모드로 동작2O??STOPWATCHStopwatch 모드로 전환3?O?카운트 시작4?O?카운트 정지5??O리셋6O??CLOCKSETClockset 모드로 전환7??O7 Segment 시간 Part 증가8?O?분 조정 상태로 전환9??O7 Segment 분 Part 증가10O??일반시계일반 시계 모드로 전환아래는 Modsel의 회로도와 Wave form이다. 회로의 앞단에 F/F은 외부 스위치입력 시 갑작스런 전압변화에 의해 전압이 흔들리는 현상이 나타나게 되는데 이를 제거해주는 회로로 DEBOUNCE회로라 하며 F/F의 CLK에 100HZ의 신호를 사용함으로써 F/F의 입력은 매 100HZ마다 입력을 받게되고 1/100S 이내의 입력전압 변화는 입력될 수 없으므MSB를 SPLUSE라는 회로를 거쳐 CLK으로 입력한다. 시계회로부에서 확인할 수 있다.INC(SW3)의 신호의 입력으로 시간이 계속 증가하고 11시에서 12시로바뀌는 시점에서 오전, 오후를 나타내는 신호 AP가 ‘1’에서 ‘0’으로 바뀌는것을 볼 수 있다. 따라서 회로에서 오전은 ‘1’이고 오후는 ‘0’으로 나타냄을알 수 있다. 7.3US에서 SETSEL신호가 인가됨에 따라 시간의 증가는 멈추고분을 증가시키는 것을 볼 수 있다.계속 분을 증가시키는 동안 7.35US와 7.36US에서 초가 60초 증가함에 따라 INC(SW3)신호에 관계없이 분이 ‘하나’ 증가하는 것을 볼 수 있다. CLKSET모드에서도 초는 계속 증가하기 때문이다. 지금의 회로도로는 시간 조정시초는 SETTING할 수 없고 시와 분만 SETTING할 수 있게 되어 있다.초까지도 조정할 수 있는 회로의 구성도 Mod3 and 회로 부분의 수정 등으로가능할 것이다.4) Stopwatch Part디지털 시계의 기능중에 하나인 STOPWATCH 기능을 할 수 있도록 해주는회로이다. SW1 입력으로 Stopwatch 모드로 바뀌고, 이 때 SW2(STRSTP)가 한번입력되면 계수 동작을 시작하고 다시 한번 입력되면 계수 동작을 멈추게 된다.계수 동작을 멈춘 상태에서 SW3(RESET)신호가 입력되면 초기화되며, 1/100초를카운트하기 위한 100진 카운터와 초를 카운트하기 위한 60진 카운터로 구성되며, Stopwatch Part의 회로도와 Wave form은 아래와 같다.SW2(STRSTP) 스위치를 한번 눌러 계수기를 동작시켜 09초 99에서 10초로카운트되는 부분으로 STOPWATCH가 순차적으로 계수 동작을 하는 것을 볼 수 있다.계수를 멈추기 위해 SW2(STRSTP)신호를 다시 한번 눌러 계수를 멈추고다시 한번 눌러 계수 동작을 시킨 후 모드를 전환하면 (2.16US에서 2.17US사이 구간) STOPWATCH가 초기 상태로 RESET됨을 볼 수 있다.STOPWATCH 모드로 선택되지 않..)이 진행 되는 것(start)을 볼 수 있다.SW2의 입력으로 계수가 시작되고 200ns(100주기) 뒤에 OUT1_[26..20]가3F(0) -> 06(1)으로 증가되는 모습(1초가 카운트 됨)을 볼 수 있다.SW2가 입력되어 Stopwatch의 계수 동작이 멈추는 모습(stop)을 나타낸다.SW3의 입력으로 1F, 3F, 3F, 3F의 초기 상태로 되는 모습을 볼 수 있다.초기화 된 Stopwatch 모드에서 SW1을 입력에 의해 CLKSET모드로 변하고, SW3가 입력되면 시간을 조정하게 된다. SW3의 입력이 한번씩 들어 갈 때마다시간 표시부가 증가하는 모습을 볼 수 있다.시 조정 모드에서 SW2의 입력이 한번 더 들어감으로써 분조정 모드로 변화하게된다. 이때 SW3의 입력에 따라 분 표시부가 1씩 카운트 되는 모습을 볼 수 있다.CLKSET 모드에서 SW1의 입력으로 일반 시계 모드로 변화되며 이때 CLR 신호가입력되어 초기화 되는 모습을 볼 수 있다.3. 하드웨어 구현디지털 시계에 사용된 부품은 다음과 같다.PCC 보드 1EAFLEX10K(EPF10K10LC84-4) 칩 1EAL7805CP 레귤레이터 1EA1uf 커패시터 1EA0.1uF 커패시터 1EA1Mhz 오실레이터 1EA1k 어레이 저한 1EAEPC1PC8 롬 1EA1k 저항 3EA스위치 4EA7-Segment 6EARed Led 1EA9V 배터리 1EA기타 소켓 등하드웨어 구현이 끝나면 앞서 설계한 프로그램을 Fpga 칩에 입력하여동작하도록 하기 위해서는 핀 배치 과정이 필요하다. 여기서 사용된 칩은 Altera사의 FLEX10K(EPF10K10LC84-4)칩이며 핀 배치는 납땜이 편한 순서로 하였다.외부 연결 핀EPF10K10LC84-4VCC4, 20, 33, 40, 45, 63GND14, 26, 31, 32, 41, 46, 68, 82SW1, SW2, SW36, 83, 78CLK1CLK_MOD66CLKSET_MOD67STPWCH_MOD657-Segment1 (A,B,C,D,E,F,G것이다.
    공학/기술| 2005.06.19| 36페이지| 1,000원| 조회(2,375)
    미리보기
전체보기
받은후기 5
5개 리뷰 평점
  • A+최고예요
    2
  • A좋아요
    0
  • B괜찮아요
    3
  • C아쉬워요
    0
  • D별로예요
    0
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 05월 21일 목요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
8:46 오후
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감