Phân tích và xử lý tín hiệu âm của ống nghe y học bằng kỹ thuật số

101 25 0
Phân tích và xử lý tín hiệu âm của ống nghe y học bằng kỹ thuật số

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 Đại Học Quốc Gia Tp Hồ Chí Minh TRƯỜNG ĐẠI HỌC BÁCH KHOA - NGUYỄN LÂM DUY PHÂN TÍCH VÀ XỬ LÝ TÍN HIỆU ÂM CỦA ỐNG NGHE Y HỌC BẰNG KỸ THUẬT SỐ Chuyên ngành: KỸ THUẬT LASER Mã số ngành: 2.07.07 LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng năm 2005 Nguyễn Lâm Duy Luận Văn Thạc Só CÔNG TRÌNH ĐƯC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Cán hướng dẫn khoa học: TS Huỳnh Quang Linh Cán chấm nhận xét 1:……………………………………………………………… Cán chấm nhận xét 2:……………………………………………………………… Luận văn thạc só bảo vệ HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày…… tháng……… năm 2005 Nguyễn Lâm Duy Luận Văn Thạc Só TRƯỜNG ĐẠI HỌC BÁCH KHOA PHÒNG ĐÀO TẠO SÑH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC Tp HCM, ngày 20 tháng 06 năm 2005 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Nguyễn Lâm Duy Phái: Nam Ngày, tháng, năm sinh: 22/10/1980 Nơi sinh: Ninh Thuận Chuyên ngành: KỸ THUẬT LASER MSHV: 01203289 TÊN ĐỀ TÀI: PHÂN TÍCH VÀ XỬ LÝ TÍN HIỆU ÂM CỦA ỐNG NGHE Y HỌC BẰNG KỸ THUẬT SỐ II- NHIỆM VỤ VÀ NỘI DUNG: Nghiên cứu lý thuyết đặc điểm âm tim phổi, từ đưa phương thức để lập trình vi tính, cho chương trình lọc nhiễu tiếng ồn; đồng thời cho ta âm tim phổi với độ xác trung thực cao Căn vào kết thu từ chương trình (tần số, băng thông lọc), ta thiết kế chế tạo thử nghiệm thiết bị điện tử thực chức III- NGÀY GIAO NHIỆM VỤ (Ngày ký Quyết định giao đề tài) : …………………… IV- NGÀY HOÀN THÀNH NHIỆM VỤ: …………………………………………………………………… V- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN (Ghi đầy đủ học hàm học vị): TS Huỳnh Quang Linh CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM NGÀNH TS Huỳnh Quang Linh PGS-TS Trần Minh Thái BỘ MÔN QUẢN LÝ CHUYÊN NGÀNH Nội dung đề cương luận văn thạc só Hội Đồng Chuyên Ngành thông qua PHÒNG ĐÀO TẠO SĐH Nguyễn Lâm Duy Ngày……….tháng…… năm 20…… KHOA QUẢN LÝ NGÀNH Luận Văn Thạc Só LỜI CẢM ƠN Đầu tiên, xin bày tỏ biết ơn sâu sa éc đến q thầy cô tận tình dạy dỗ, bảo cho suốt hai năm học vừa qua Đặc biệt, muốn gởi lời cảm ơn đến PGS-TS Trần Minh Thái cho lời khuyên bảo q giá thực luận văn Ngoài ra, luận văn hoàn thành không giúp đỡ hướng dẫn nhiệt tình TS Huỳnh Quang Linh, người thầy quan tâm, động viên trình hoàn tất luận văn tốt nghiệp thạc só Sau cùng, xin gởi lời cảm ơn đến gia đình tôi, chỗ dựa vững cha éc cho tôi, bạn học khóa chia sẻ giúp tôi gặp khó khăn Nguyễn Lâm Duy Luận Văn Thạc Só TÓM TẮT LUẬN VĂN THẠC SĨ Trong việc chẩn đoán để đ ịnh bệnh, việc sử dụng ống nghe y học sử dụng từ lâu (từ năm 1819) Tuy nhiên, việc sử dụng ống nghe truyền thống có khuyết điểm sau: -m nghe trộn lẫn âm từ nhiều nguồn khác tim, phổi, âm môi trường xung quanh -Người bác só phải thật cẩn trọng tập trung để nghe âm cần nghe (tim phổi ) để từ đưa kết chẩn đoán Điều đòi hỏi người bác sỹ phải có nhiều kinh nghiệm Như vậy, việc phát triển chương trình vi tính lọc bớt tạp âm môi trường, khuếch đại âm mà ta muốn nghe, đồng thời giúp người bác sỹ đưa kết luận chẩn đoán ban đầu góp phần giảm đáng kể khó khăn cho người bác sỹ tăng cường xác việc chẩn đoán Luận văn nhằm mục đích xây dựng chương trình vi tính xử lý âm thu từ ống nghe y học thông thường để có âm tim phổi có độ trung thực cao, làm sở cho người bác só đưa chẩn đoán xác Mặt khác,thông qua chương trình, ta xác đ ịnh thông số kỹ thuật tối ưu (tần số, băng thông lọc ) để thiết kế chế tạo thử nghiệm ống nghe y học điện tử Nguyễn Lâm Duy Luận Văn Thạc Só MỤC LỤC PHẦN 1: TỔNG QUAN PHẦN 2: ĐẶC ĐIỂM ÂM THANH CỦA TIM VÀ PHỔI 11 2.1 Cấu tạo đặc điểm âm tim 11 2.1.1 Cấu tạo tim ……………………………………………………………………… 11 2.1.2 Quá trình hoạt động tim ……………………………………………… 13 2.1.3 Đặc điểm âm tim ……………………………………………… 15 2.2 Cấu tạo đặc điểm âm phổi ……………………………………………… 21 2.2.1 Cấu tạo hoạt động phổi ……………………………………………21 2.2.2 Đặc điểm âm phổi ……………………………………………………… 23 2.3 Phép biến đổi Fourier …………………………………………………………………………… 27 2.3.1 Biểu diễn chuỗi Fourier tín hiệu tuần hoàn ……………………………………………………………………………………………………………………………… 28 2.3.2 Phép biến đổi Fourier sóng không tuần hoàn ………………………………………………………………………………………………………………………… 30 2.3.3 Phép biến đổi Fourier sử dụng thực tế tính toán phép phân tích wavelet …………………………………………………… 30 2.4 Các đặc điểm tiếng ồn ………………………………………………… 36 2.4.1 Tiếng ồn trắng (White Noise) ………………………………… 37 2.4.2 Tiếng ồn 1/f ……………………………………………………………………… 37 PHẦN 3: KẾT QUẢ NGHIÊN CỨU THỰC NGHIỆM 3.1 Chương trình xử lý tín hiệu âm thu từ ống nghe y học … 39 3.1.1 Cách thức thực ……………………………………………………………… 39 3.1.2 Yêu cầu nội dung lập trình …………………………………………… 41 Nguyễn Lâm Duy Luận Văn Thạc Só 3.1.3 Cách thức sử dụng chương trình ……………………………………… 41 3.1.3.1 Những chức dành cho phần xử lý âm thu từ ống nghe y học có tích hợp micro thu âm ……………… 42 3.1.3.2 Những chức dành cho âm mẫu công bố ……………………………………………………………………………………………………… 51 3.2 Kết thu …………………………………………………………………………………… 56 3.2.1 Khi môi trường có tạp âm ……………………………………………… 56 3.2.2 Trong trường hợp môi trường có nhiều tạp âm ……… 60 3.2.3 Âm phổi ………………………………………………………………………… 63 3.3 Nhận xét chung chương trình ……………………………………………………… 66 3.4 Thiết bị hỗ trợ thính khám ………………………………………………………………… 66 3.4.1 Nguyên lý hoạt động ……………………………………………………………… 66 3.4.2 Sơ đồ mạch điện tử ………………………………………………………………… 69 3.4.3 Cách thức sử dụng kết ban đầu đạt ……… 74 PHẦN 4: KẾT LUẬN …………………………………………………………………………………………………… 76 4.1 Những kết thu ……………………………………………………………………… 76 4.1.1 Đối với âm tim …………………………………………………………… 76 4.1.2 Đối với âm phổi ………………………………………………………… 76 4.1.3 Thiết bị hỗ trợ thính khám ………………………………………………… 76 4.2 Hướng phát triển đề tài ………………………………………………………………… 76 TÀI LIỆU THAM KHẢO …………………………………………………………………………………………… 78 PHỤ LỤC Nội dung chương trình viết ngôn ngữ Matlab ……………………………… 82 Nguyễn Lâm Duy Luận Văn Thạc Só PHẦN 1: TỔNG QUAN Hiện nay, việc kết hợp điện tử tin học cho ống nghe y học thông thường nhiều nhóm thực Ví dụ nhóm Aaron Davis Braudon Ritcher trường Đại Học Cornell thực nha èm thể nhịp tim lên hình tivi, đếm số nhịp tim/phút phát báo động cần thiết [1] công trình nghiên cứu Noal Williams Barroso, John Noonai ống nghe kỹ thuật số [2] Mặc dù nhóm có mục đích riêng nhìn chung, xu hướng dùng thiết b ị điện tử hay máy vi tính để xử lý, hình ảnh hóa âm thu từ ống nghe y học bình thường Trên vài ví dụ nghiên cứu số trường đại học giới Thực tế ống nghe y học kỹ thuật số (hình 1.1)cũng phần mềm xử lý kèm số hãng giới thiệu rộng rãi Littmann, Philips,… [3] Các phần mềm kèm với ống nghe y học điện tử nha èm mục đích xử lý, hiển thị, lưu trữ âm nghiên cứu thương mại hóa nhiều với giá bán cao [4] Hình 1.2 ví dụ giao diện chương trình DSSF3 Chúng ta sử dụng phần mềm việc hướng dẫn thực tập, giảng dạy cho sinh viên chuyên ngành tim mạch thuận lợi lớn Tuy nhiên, việc nhân rộng ứng dụng phạm vi nước đòi hỏi nguồn kinh phí lớn Đề tài thực với mục tiêu xử lý ba èng vi tính âm thu từ ống nghe thông thường để có tín hiệu âm tim phổi cách xác Từ tiến hành nghiên cứu chế tạo thử ống nghe y học điện tử (thiết bị hỗ trợ thính khám) với chức lọc, khử nhiễu tạp âm, tăng cường âm tim phổi theo yêu cầu người sử dụng Nguyễn Lâm Duy Luận Văn Thạc Só Hình 1.1: Một ống nghe y học điện tử kỹ thuật số [5] Hình 1.2: Giao diện chương trình phân tích tín hiệu tim DSSF3 hãng Yoshimasa Electronics [6] Nguyễn Lâm Duy Luận Văn Thạc Só 10 Để thực mục tiêu đề ra, bước tiến hành sau thực hiện: Thiết kế phân thu âm -Lựa chọn thiết bị thu âm (micro) có độ nhạy tốt kích thước nhỏ gọn -Thực việc nối kết micro vào ống nghe y học thông thường -Kết nối phần thu với máy vi tính Thiết kế phần mềm phân tích tín hiệu thu -Lập trình máy tính để xử lí tín hiệu thu ba èng ngôn ngữ Matlab, thực mục tiêu đề -Kiểm tra độ trung thực xác tín hiệu sau xử lí ba èng cách so sánh với âm mẫu công bố website trung tâm y khoa có uy tín giới -Xác định thông số kỹ thuật cần thiết để thiết kế phần cứng ống nghe điện tử Thiết kế chế tạo thử nghiệm mạch điện tử ống nghe -Tập hợp thông số cần thiết (từ trình phân tích máy vi tính ) để làm sở thiết kế mạch điện tử -Thi công chế tạo thử nghiệm -Đánh giá kết đạt Nguyễn Lâm Duy Luận Văn Thạc Só 87 'Position',[0.79585 0.3854961832061069+.037 0.1925 0.28175572519084], 'Style','frame', 'Tag','Frame4'); h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Max',2, 'Position',[0.8012499999999999 0.5763358778625953+.041 0.08249999999999999 0.05534351145038167], 'String','BIEN DO', 'Style','text', 'Tag','StaticText2'); h_slider = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.885 0.5877862595419847+.041 0.1 0.03244274809160305], 'String',' 1', 'Style','slider', 'Callback','XuLyAmTimVaPhoi(''doi bien do'');', 'Tag','Slider1', 'Value',1); h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.925490196078431 0.913725490196078 0.847058823529412], 'ListboxTop',0, 'Position',[0.8949999999999999-0.01 0.6297709923664122+.04 0.0225 0.02290076335877862], 'String','0', 'Style','text', 'Tag','StaticText3'); h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.925490196078431 0.913725490196078 0.847058823529412], 'ListboxTop',0, 'Position',[0.95375 0.6297709923664122+.04 0.01875 0.02290076335877862], 'String','1', 'Style','text', 'Tag','StaticText3'); h_sound1= uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, Nguyễn Lâm Duy Luận Văn Thạc Só 88 'Position',[0.8025 0.4942748091603053+.051 0.08124999999999999 0.05916030534351145], 'String','NGHE', 'Style','pushbutton', 'Callback','XuLyAmTimVaPhoi(''nghe1'');', 'Interruptible','on', 'Tag','Pushbutton8'); h_saveas= uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.89625 0.4942748091603053+.051 0.08124999999999999 0.05916030534351144], 'String','LUU LAI', 'Callback','XuLyAmTimVaPhoi(''luu lai'');', 'Tag','Pushbutton9'); h_specgram1= uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.8025 0.4782748091603053 0.175 0.05916030534351144], 'String','XEM PHO TAN SO', 'Callback','XuLyAmTimVaPhoi(''xem 1'');', 'Tag','Pushbutton10'); h_radio1= uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.8025 0.4351145038167939 0.08124999999999999 0.03435114503816794], 'String','XGrid', 'Style','radiobutton', 'Callback','XuLyAmTimVaPhoi(''XGrid1'');', 'Tag','Radiobutton1', 'Value',0); h_radio2 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.9025 0.4351145038167939 0.073999999999999 0.03435114503816794], 'String','YGrid', 'Style','radiobutton', 'Callback','XuLyAmTimVaPhoi(''YGrid1'');', 'Tag','Radiobutton2'); Nguyễn Lâm Duy Luận Văn Thạc Só 89 h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.925490196078431 0.913725490196078 0.847058823529412], 'ListboxTop',0, 'Position',[0.79625 0.02290076335877863+.05 0.192 0.299618320610687], 'Style','frame', 'Tag','Frame5'); h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.796078431372549 0.96078431372549 0.996078431372549], 'ListboxTop',0, 'Position',[0.8 0.1736641221374046+.05 0.18375 0.1431297709923664], 'Style','frame', 'Tag','Frame6'); h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.796078431372549 0.96078431372549 0.996078431372549], 'ListboxTop',0, 'Position',[0.8 0.2786259541984733+.05 0.18375 0.03816793893129771], 'Style','frame', 'Tag','Frame7'); h1 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.796078431372549 0.96078431372549 0.996078431372549], 'FontSize',10, 'ListboxTop',0, 'Position',[0.80125 0.2805343511450382+.05 0.18 0.03244274809160305], 'String','DU LIEU', 'Style','text', 'Tag','StaticText4'); h_soundlist= uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.831372549019608 0.831372549019608 0.831372549019608], 'ListboxTop',0, 'Position',[ 0.8025 0.240458015267176+.05 0.18 0.0362595419847328 ], 'String', mat2str(str_b), 'Style','popupmenu', 'Tag','PopupMenu1', 'Callback','XuLyAmTimVaPhoi(''am mau'');', 'Value',1); h_backward = uicontrol('Parent',h0, 'Units','normalized', Nguyễn Lâm Duy Luận Văn Thạc Só 90 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.803 0.1812977099236641+.05 0.08375000000000001 0.04770152671755725], 'String','', 'Style','pushbutton', 'Callback','XuLyAmTimVaPhoi(''tiep theo'');', 'Tag','Pushbutton11'); h_sound2 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.835 0.09732824427480916+.075 0.11125 0.04530534351145], 'String','NGHE', 'Interruptible','on', 'Style','pushbutton', 'Callback','XuLyAmTimVaPhoi(''nghe2'');', 'Tag','Pushbutton12'); h_specgram2= uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.805 0.12053 0.17 0.045030534351144], 'String','XEM PHO TAN SO', 'Callback','XuLyAmTimVaPhoi(''xem 2'');', 'Tag','Pushbutton10'); h_radio3 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.8049999999999999 0.0790152671755725 0.07375 0.03244274809160305], 'String','XGrid', 'Style','radiobutton', Nguyễn Lâm Duy Luận Văn Thạc Só 91 'Callback','XuLyAmTimVaPhoi(''XGrid2'');', 'Tag','Radiobutton3'); h_radio4 = uicontrol('Parent',h0, 'Units','normalized', 'BackgroundColor',[0.752941176470588 0.752941176470588 0.752941176470588], 'ListboxTop',0, 'Position',[0.899999999999 0.0790152671755725 0.07375 0.03244274809160305], 'String','YGrid', 'Style','radiobutton', 'Callback','XuLyAmTimVaPhoi(''YGrid2'');', 'Tag','Radiobutton4'); % %Ket thuc phan thiet lap handles=[h_inputsignal, h_cut, h_apply, h_open, h_undo, h_modify,h_slider, h_radio1, h_radio2, h_ax2, h_soundlist, h_radio3, h_radio4, h_ax1 h_specgram1 h_specgram2]; set(gcf,'userdata',handles); % % answers={'20','5000','0.5','5','5500','2'}; set(h_modify,'userdata',answers); XuLyAmTimVaPhoi('am mau'); elseif strcmp(command_str,'xylabel1') xlabel('t(s)'); ylabel('Bien Do'); axis('tight'); XuLyAmTimVaPhoi('XGrid1'); XuLyAmTimVaPhoi('YGrid1'); elseif strcmp(command_str,'thu am') fs=11025; y_tam=wavrecord(4*fs,fs,1,'double'); t=linspace(0,length(y_tam)/fs,length(y_tam)); axes(h_ax1); plot(t,y_tam); XuLyAmTimVaPhoi('xylabel1'); title('\bfAM THANH CHUA XU LY'); set(h_ax1,'userdata',{'\bfAM THANH DANG XU LY'}); set(h_inputsignal,'userdata',y_tam); %%Thiet lap value cho slider set(h_slider,'value',max(abs(y_tam))); %Truong hop khong lay tin hieu de filter yy=[y_tam (1:length(y_tam))']; Nguyễn Lâm Duy Luận Văn Thạc Só 92 set(h_cut,'userdata',yy); %Luu du lieu cho Undo y_undo=[zeros(size(y_tam,1),4) yy]; set(h_undo,'userdata',y_undo); set(h_open,'userdata',[4]); elseif strcmp(command_str,'mo file') [filename,pathname]=uigetfile('*.wav','CHOOSE A FILE TO OPEN',.5,.5); if ~isempty(filename) y_tam=wavread([pathname filename]); t=linspace(0,length(y_tam)/11025,length(y_tam)); axes(h_ax1); plot(t,y_tam,'b'); str_b=['AM THANH CHUA XU LY: \bf' filename]; title(str_b); set(h_ax1,'userdata',['AM THANH DANG XU LY: \bf' filename]); XuLyAmTimVaPhoi('xylabel1'); %Truong hop lay tin hieu de filter tiep set(h_inputsignal,'userdata',y_tam); %Truong hop khong lay tin hieu de filter yy=[y_tam (1:length(y_tam))']; set(h_cut,'userdata',yy); %%Thiet lap value cho slider set(h_slider,'value',min([ max(abs(y_tam))])); %Luu du lieu cho Undo y_undo=[zeros(size(y_tam,1),4) yy]; set(h_undo,'userdata',y_undo); set(h_open,'userdata',[4]); else return; end elseif strcmp(command_str,'phoi') k=4; p=get(h_ax1,'userdata'); Fp1=60; Fp2=1500; Rp=.5; Fs1=20; Fs2=2500; Rs=2; Nguyễn Lâm Duy Luận Văn Thạc Só 93 [n,Wn]=ellipord([Fp1 Fp2]*2/11025,[Fs1 Fs2]*2/11025,Rp,Rs); y_tam=get(h_cut,'userdata'); [b,a]=ellip(n,Rp,Rs,Wn); y_filter=y_tam(:,1); for i=1:6 y_filter=filter(b,a,y_filter); if rem(i,2)==1 %Use wavelet to de-noise the signal %Find default values [thr,sorh,keepapp]=ddencmp('den','wv',y_filter); %Denoise signal in global thresholding option y_filter=wdencmp('gbl',y_filter,'db4',4,thr,sorh,keepapp); end end t=linspace(0,length(y_filter)/11025,length(y_filter)); axes(h_ax1); plot(t,y_filter); title(p); XuLyAmTimVaPhoi('xylabel1'); set(h_ax1,'userdata',p); yy=[y_filter (1:length(y_filter))']; set(h_cut,'userdata',yy); %%Thiet lap value cho slider set(h_slider,'value',max(abs(y_filter))); %set(h_apply,'userdata',y_filter); y_undo=[zeros(size(y_filter,1),4) yy]; set(h_undo,'userdata',y_undo); set(h_open,'userdata',[k]); elseif strcmp(command_str,'tim') k=get(h_open,'userdata'); p=get(h_ax1,'userdata'); Fp1=20; Fp2=1000; Rp=.5; Fs1=5; Fs2=1500; Rs=1.4; [n,Wn]=ellipord([Fp1 Fp2]*2/11025,[Fs1 Fs2]*2/11025,Rp,Rs); y_tam=get(h_cut,'userdata'); [b,a]=ellip(n,Rp,Rs,Wn); y_filter=y_tam(:,1); Nguyễn Lâm Duy Luận Văn Thạc Só 94 for i=1:8 y_filter=filter(b,a,y_filter); if rem(i,2)==1 %Use wavelet to de-noise the signal %Find default values [thr,sorh,keepapp]=ddencmp('den','wv',y_filter); %Denoise signal in global thresholding option y_filter=wdencmp('gbl',y_filter,'db4',4,thr,sorh,keepapp); end end t=linspace(0,length(y_filter)/11025,length(y_filter)); axes(h_ax1); plot(t,y_filter); title(p); XuLyAmTimVaPhoi('xylabel1'); set(h_ax1,'userdata',p); yy=[y_filter (1:length(y_filter))']; set(h_cut,'userdata',yy); %%Thiet lap value cho slider set(h_slider,'value',max(abs(y_filter))); y_undo=[zeros(size(y_filter,1),4) yy]; set(h_undo,'userdata',y_undo); set(h_open,'userdata',[k]); elseif strcmp(command_str,'bo doan') yy=get(h_cut,'userdata'); y_undo=get(h_undo,'userdata'); k=get(h_open,'userdata'); p=get(h_ax1,'userdata'); xlim=floor(get(h_ax1,'Xlim')*11025); if xlim(1)size(yy,1) xlim(2)=size(yy,1); end i1=xlim(1); i2=xlim(2); if k1 amp=1; end Nguyễn Lâm Duy Luận Văn Thạc Só 97 yy(:,1)=yy(:,1)*amp/max(abs(yy(:,1))); len=size(yy,1); t=linspace(0,len/11025,len); axes(h_ax1); plot(t,yy(:,1)); title(p); XuLyAmTimVaPhoi('xylabel1'); set(h_ax1,'userdata',p); set(h_cut,'userdata',yy); elseif strcmp(command_str,'nghe1') yy=get(h_cut,'userdata'); sound(yy(:,1),11025); elseif strcmp(command_str,'luu lai') yy=get(h_cut,'userdata'); [filename,pathname]=uiputfile('*.wav','NHAP VAO TEN TAP TIN CAN LUU'); wavwrite(yy(:,1),11025,[pathname,filename]); elseif strcmp(command_str,'XGrid1') i=get(h_radio1,'value'); if i==0 set(h_ax1,'Xgrid','off'); else set(h_ax1,'Xgrid','on'); end elseif strcmp(command_str,'YGrid1') i=get(h_radio2,'value'); if i==0 set(h_ax1,'Ygrid','off'); else set(h_ax1,'Ygrid','on'); end elseif strcmp(command_str,'xem 1') str=' CHUONG TRINH XU LY AM THANH TIM VA PHOI - LUAN VAN TOT NGHIEP K14 - NGUYEN LAM DUY'; h1=figure('Units','normalized', 'Color',[0.8 0.8 0.85], 'Position',[0.1 0.2 0.9 0.5], 'Numbertitle','off', 'Name',str); y_tam=get(h_cut,'userdata'); y_spec=y_tam(:,1); specgram(y_spec,1024,11025,[],1000); axis xy; title('DO THI BIEU DIEN PHO TAN SO CUA AM THANH SAU XU LY'); xlabel('t (s)'); ylabel('Tan So (Hz)'); Nguyễn Lâm Duy Luận Văn Thạc Só 98 set(gca, 'Ytick',[30 150 350 710 1300]); ylim([20 1500]); set(gca,'clim',[-50 30]); colorbar vert; colormap jet; hold on; t=linspace(0,length(y_spec)/11025,length(y_spec)); plot(t,100*(10+4*[y_spec(320:length(y_spec)); zeros(319,1)]/max(y_spec)),'white'); %plot(t,100*(12+4*y_spec/max(y_spec)),'black'); grid on; hold off; elseif strcmp(command_str,'am mau') % Danh cho phan dau a={'Normal Heart wav'; 'Diastolic Wide S2 Split.wav'; 'Late Systolic.wav'; 'Normal split.wav'; 'openingsnap.wav'; 'pansystolic.wav'; 'Pericardial Friction Rub II.wav'; 'S3.wav'}; b=str2mat('Normal Heart ', 'Diastolic Wide S2 Split', 'Late Systolic', 'Normal split', 'Openingsnap', 'Pansystolic', 'Pericardial Friction Rub II', 'S3'); % i=get(h_soundlist,'value'); bb=mat2str(b(i,:)); str_a=['C:\Documents and Settings\Lelise\My Documents\My Music\TIENG TIM\' a{i}]; str_b=['AM THANH MAU - \bf' bb]; [y_standard,fs]=wavread(str_a); axes(h_ax2); t=linspace(0,length(y_standard)/fs,length(y_standard)); plot(t,y_standard,'r'); xlabel('t(s)'); ylabel('Bien Do'); title(str_b); axis('tight'); Nguyễn Lâm Duy Luận Văn Thạc Só 99 XuLyAmTimVaPhoi('XGrid2'); XuLyAmTimVaPhoi('YGrid2'); set(h_soundlist,'userdata',y_standard); set(h_soundlist,'value',[i]); elseif strcmp(command_str,'tro ve') i=get(h_soundlist,'value')-1; if i8 i=1; end set(h_soundlist,'value',[i]); XuLyAmTimVaPhoi('am mau'); elseif strcmp(command_str,'nghe2') yy=get(h_soundlist,'userdata'); sound(yy,11025); elseif strcmp(command_str,'xem 2') % Danh cho phan dau b=str2mat('Normal Heart ', 'Diastolic Wide S2 Split', 'Late Systolic', 'Normal split', 'Openingsnap', 'Pansystolic', 'Pericardial Friction Rub II', 'S3'); % i=get(h_soundlist,'value'); bb=mat2str(b(i,:)); str=' CHUONG TRINH XU LY AM THANH TIM VA PHOI - LUAN VAN TOT NGHIEP K14 - NGUYEN LAM DUY'; h2=figure('Units','normalized', 'Color',[0.8 0.8 0.85], 'Position',[0.05 0.2 0.9 0.7], 'Numbertitle','off', 'Name',str); y_tam=get(h_soundlist,'userdata'); y_spec=y_tam(:,1); Nguyễn Lâm Duy Luận Văn Thạc Só 100 specgram(y_spec,1024,11025,[],1000); axis xy; title(['DO THI BIEU DIEN PHO TAN SO CUA AM MAU: \bf' bb]); xlabel('t (s)'); ylabel('Tan So (Hz)'); set(gca, 'Ytick',[30 150 350 710 1300]); ylim([30 1500]); set(gca,'clim',[-40 30]); colorbar vert; colormap jet; hold on; t=linspace(0,length(y_spec)/11025,length(y_spec)); plot(t,100*(12+4*[y_spec(420:length(y_spec)); zeros(419,1)]/max(y_spec)),'white'); grid on; hold off; elseif strcmp(command_str,'XGrid2') i=get(h_radio3,'value'); if i==0 set(h_ax2,'Xgrid','off'); else set(h_ax2,'Xgrid','on'); end elseif strcmp(command_str,'YGrid2') i=get(h_radio4,'value'); if i==0 set(h_ax2,'Ygrid','off'); else set(h_ax2,'Ygrid','on'); end end Nguyễn Lâm Duy Luận Văn Thạc Só 101 TÓM TẮT LÝ LỊCH TRÍCH NGANG I LÝ LỊCH SƠ LƯC: Họ tên: NGUYỄN LÂM DUY Ngày, tháng, năm sinh: 22/10/1980 Nơi sinh: Ninh Thuận Địa liên lạc: 958/54/25 Lạc Long Quân, Phường 8, Q.Tân Bình, Tp.Hồ Chí Minh II QUÁ TRÌNH ĐÀO TẠO: ĐẠI HỌC: Chế độ học: Chính quy Thời gian học: Từ 05/09/1998 đến 12/06/2002 Nơi học: Trường Đại Học Sư Phạm Thành Phố Hồ Chí Minh Ngành học: Vật Lý Tên đồ án, luận án, môn thi tốt nghiệp chủ yếu: “ HÀM PHÂN BỐ XUYÊN TÂM TRONG PLASMA LƯU CHẤT ” Ngày nơi bảo vệ luận án tốt nghiệp: 05/06/2002 Người hướng dẫn: TS Đỗ Xuân Hội III QUÁ TRÌNH CÔNG TÁC Tên quan: Khoa Vật Lý, Trường Đại Học Sư Phạm Tp Hồ Chí Minh Thời gian công tác: Từ tháng 10/2002 CƠ QUAN XÁC NHẬN (Ký tên đóng dấu ) Ngày 25 tháng 06 năm 2005 NGƯỜI KHAI KÝ TÊN Nguyễn Lâm Duy Nguyễn Lâm Duy Luận Văn Thạc Só ... TÊN ĐỀ TÀI: PHÂN TÍCH VÀ XỬ LÝ TÍN HIỆU ÂM CỦA ỐNG NGHE Y HỌC BẰNG KỸ THUẬT SỐ II- NHIỆM VỤ VÀ NỘI DUNG: Nghiên cứu lý thuyết đặc điểm âm tim phổi, từ đưa phương thức để lập trình vi tính, cho... tử hay m? ?y vi tính để xử lý, hình ảnh hóa âm thu từ ống nghe y học bình thường Trên vài ví dụ nghiên cứu số trường đại học giới Thực tế ống nghe y học kỹ thuật số (hình 1.1)cũng phần mềm xử lý. .. Nguyễn Lâm Duy Luận Văn Thạc Só Hình 1.1: Một ống nghe y học điện tử kỹ thuật số [5] Hình 1.2: Giao diện chương trình phân tích tín hiệu tim DSSF3 hãng Yoshimasa Electronics [6] Nguyễn Lâm Duy

Ngày đăng: 11/02/2021, 16:00

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan