Implement Moving average filter using C

Slides:



Advertisements
Similar presentations
실험과제 1  실험과제 1 은 삼성첨단기술연수소의 산학 과정에 참가한  전전컴 학부학생을 대상으로 하여 개설된 1 학점 과정입니다.  담당교수 : 조준동 (7127,  과정내용 : 삼성첨기연에서 수행한 과제와 연관되어 과제.
Advertisements

© DBLAB, SNU 화일구조. 강의 소개 - 화일구조  Instructor : Prof. Sukho Lee (301 동 404 호 )  홈페이지 :  교과목 개요 – 이 과목은 데이타 관리와 응용을 위한 화일 구조의 설계와.
농산물이 인플레이션의 주범인가? 고려대학교 식품자원경제학과 한 정 훈 김 지 환 정 석 원 이 민 규.
전남행복수업 design 독서ㆍ토론 수업 지원 자료 활용 목포유달초등학교 김미향.
화일구조.
전남행복수업 design, 독서·토론수업 연구의 개요를 말씀드리겠습니다..
제08장 필터 설계. 제08장 필터 설계 Summary of design stages for digital filters 제08장 필터 설계.
Multimedia Programming 04: Point Processing Departments of Digital Contents Sang Il Park.
음향 시스템 사양서 CROSSOVERS DBX : 234S SPECIFICATIONS FEATURES
행복한 부자교실 16기 8조 성동구 성수동 답사 결과 12월 22일 발표.
2016 ITA 1월 강의 C Programming -4일차- 포인터배열 및 이중포인터 정대진 ( )
PART 01 총 론 제9장 한국 사회복지법제의 형성과 발전.
디지털 신호처리
Programming을 이용한 ECG증폭기 설계
01 화일의 기본 개념 02 화일 저장장치 03 화일 입출력 제어 04 순차화일 05 화일의 정렬 06 화일의 합병
Chapter 10– 표준 함수(1) Outline 10.1 스트림과 파일 10.2 입출력 표준 함수
5장 비순환 디지털 필터의 설계 1.
제5장 이산시간 신호와 시스템의 푸리에 표현.
공학기초설계 Youn-Hee Han 강의 소개 & MinGW & gcc 공학기초설계 Youn-Hee Han
DSP와 TMS320F28X의 이해
QT 프로그래밍 발표: 김래영.
쉽게 풀어쓴 C언어 Express 제16장 파일 입출력 C Express Slide 1 (of 23)
Multimedia Programming 06: Point Processing3
제 12장 I/O멀티플렉싱(Multiplexing)
1 장 서론 목원대학교 정보통신공학과.
Communication and Information Systems Lab. 황재철
시스템 호출 read , write의 효율성 lseek test example – test1.c 실습 – 연습문제 2.8
Homework 6… 12월 2일(금) 11:59pm까지 자신의 이름과 학번을 출력해 주는 유닉스/리눅스 네트워크 소켓 서버 프로그램 과 클라이언트 프로그램 을 작성해 보세요 참고 (실습1) Hello 프로그램 helloserver.c helloclient.c 컴파일.
Communication and Information Systems Lab. 최정훈
신호처리 Signal Processing
Chapter 14 이진 데이터 파일과 임의 접근 데이터 파일 C 이진 데이터 파일 임의 접근 파일.
4장 파일.
6장 파일 및 레코드 잠금.
웨이브렛 프레임과 공간 정보를 이용한 질감 영상 분할 Texture Segmentation Using Wavelet Frame and Spatial Information 지도교수: 조 석 제 예 병 길 제어계측공학과.
FILE I/O 번째주 Dept. of Computer Science & Engineering
11장. 1차원 배열.
10장 C 표준 파일 입출력 子曰 學而時習(실습?)之 不亦悅乎.
디지털 신호처리
Multimedia Programming 10: Unsharp Masking/ Histogram Equalization
Computer Graphics OpenGL 설치 및 설정
CGI (Common Gateway Interface)
24장. 파일 입출력.
19. 함수 포인터와 void 포인터.
CGI (Common Gateway Interface)
발표자료는 다음링크에서 다운로드 받으실 수 있습니다.
Eclipse CDT에서 프로젝트를 Export 하고 Import 하는 방법
프로그래밍 기초와 실습 Chapter 11 Recursion.
Pspice를 이용한 전기/전자회로 모의해석 –
조 병 규 Software Quality Lab. 한국교통대학교
Chapter 2 Time Domain Analysis
Homework #9 (1/2) 다음 지시에 따라 프로그램/결과(혹은 설명)를 출력하여 제출한다.
Homework #9 (1/2) 다음 지시에 따라 프로그램/결과(혹은 설명)를 출력하여 제출한다.
화일구조.
Introduction to Lab. Instruments
MATLAB Image Processing Toolbox
Image Restoration Using MATLAB Image ToolBox Visual Communication Lab
(1) 필터 구조마다 유한 정세도 특성(finite precision characteristics)이 다름.
생체계측 강의록 Medical instrucmentation#8
선의관악종합사회복지관 김정현.
-Part2- 제2장 다차원 배열이란 무엇인가.
MATLAB Homework#6 Equalizer 기초
Part 정비사업의 절차 1 ※ : 도시주거환경정비기본계획 도시·주거환경 정비계획(안) 작성 도시·주거환경정비 기본계획 수립
실습과제 1번 생성된 파일 basic.txt를 프로젝트 폴더에서 메모장으로 열고 내용을 확인
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
argc, argv 의 사용방법 #include <stdio.h>
유예 X-FILE *조사자* 1301권희원 1315이예지 1317장아정 1322홍자현.
3장 파일 다루기 한빛미디어(주).
Implementing SmartThings App Visualization tool
남자의피부의 고민을 한번에 싹~ 해결해주는 옴므라인
BoardGame 보드게임 따라가기.
Presentation transcript:

Implement Moving average filter using C 29th October

Today’s topic Implement very simple FIR filter using C N-tap Moving average filter. Listen before/after filtering Make sure whether the filtered signal is high-frequency cutoff Extended works Replace filter coefficients Implement a FIR filter with arbitrary frequency response (using MATLAB)

Implementing FIR filter 1 2 y[n-1] y[0] y[n] y[1] y[n+1] y[2] N/2 보다 작은 영역과 마지막 부분을 고려해야 함.

Extra study File의 전체 길이를 알아내는 방법 “stdio.h” 에 정의된 FILE의 structure를 알면 됨 Length와 연관된 member가 존재 FILE 과 관련된 I/O 함수를 이용하는 방법 fseek(*file_pointer,off_set,arribute) 주어진 File pointer에서 offset만큼 이동 시킴 Attribute : SEEK_CUR, SEEK_SET, SEEK_END ftell(*file_pointer) 현재 file pointer의 위치를 넘겨줌 rewind(*file_pointer) 파일을 첫번째 위치로 되돌림

File 의 길이를 알아내는 방법 fseek(fpr,0L,SEEK_END); File pointer를 끝 부분으로 이동 len=ftell(fpr)/sizeof(short); 현재 File pointer의 위치를 읽고 Element size로 나누어줌 결국, 전체 element의 개수가 얻어짐 rewind(fpr); File pointer를 시작 위치로 다시 이동

Moving average filter의 C-코드 main(int argc, char **argv){ if ( argc<4 ) { printf("usage : %s input output num_tap\n",argv[0]); exit(-1); } if ((fpr=fopen(argv[1],"rb"))==NULL) { printf("Input file [%s] is not found.\n",argv[1]); fpw=fopen(argv[2],"wb"); num_tap=atoi(argv[3]); fseek(fpr,0L,SEEK_END); len=ftell(fpr)/sizeof(short); rewind(fpr); in=(short *)malloc(sizeof(short)*len); out=(short *)malloc(sizeof(short)*len); fread(in,sizeof(short),len,fpr); for(i=0; i<len; i++) { t_val=0.; for(j=-num_tap/2; j<=num_tap/2; j++) { if ( i+j >= 0 && i+j < len ) t_val+=(1./num_tap)*in[i+j]; out[i]=t_val; fwrite(out,sizeof(short),len,fpw); free(out); free(in); fclose(fpr); fclose(fpw);

Core part for(i=0; i<len; i++) { t_val=0.; for(j=-num_tap/2; j<=num_tap/2; j++) { if ( i+j >= 0 && i+j < len ) t_val+= (1./num_tap)*in[i+j]; } out[i]=t_val; FIR filter coefficients

Homework Get filter coefficients using MATLAB Using MATLAB Filter Design Tools Replace the filter coefficients in the example code with those from MATLAB Listen the filtered signals Due :12, Nov

MATLAB Digital filter design tool

Export to C-code To C-code