Nghiên cứu các phương pháp tạo ánh sáng cấu trúc

112 408 1
Nghiên cứu các phương pháp tạo ánh sáng cấu trúc

Đ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

LUẬN VĂN THẠC SỸ KHOA HỌC MỤC LỤC MỤC LỤC DANH MỤC HÌNH VẼ LỜI CAM ĐOAN .6 MỞ ĐẦU .7 CHƯƠNG I: TỔNG QUAN VỀ PHƯƠNG PHÁP QUÉT 3D BẰNG ÁNH SÁNG CẤU TRÚC .10 1.1 Khái niệm phương pháp quét 3D bằng ánh sáng cấu trúc 10 1.2 Tìm hiểu về ánh sáng cấu trúc 14 1.2.1 Khái niệm về ánh sáng cấu trúc .14 1.2.2 Cơ sở lý thuyết của phương pháp đo bằng ánh sáng cấu trúc 15 1.3 Nguyên lý của máy quét 3D bằng ánh sáng cấu trúc .17 1.4 Ứng dụng của thiết bị quét 3D bằng ánh sáng cấu trúc 18 1.5 Một số thiết bị quét 3D bằng ánh sáng cấu trúc hiện có thế giới 19 CHƯƠNG II TÌM HIỂU ÁNH SÁNG CẤU TRÚC .24 2.1 Các dạng thể hiện của ánh sáng cấu trúc: .24 2.1.1 Kỹ thuật chiếu tuần tự 25 2.1.2 Phương pháp chiếu mẫu màu tồn khơng gian 32 2.1.3 Phương pháp đánh dấu đường (Single shots) 34 2.1.4 Lưới số: lưới 2D không gian 37 2.1.5 Các phương pháp kết hợp 40 2.2 Các phương pháp tạo ánh sáng cấu trúc 41 2.2.1 Tạo ánh sáng cấu trúc bằng giao thoa 41 2.2.2 Tạo ánh sáng cấu trúc bằng cách tử 47 2.2.3 Tạo ánh sáng cấu trúc bằng máy chiếu 48 2.3.4 Các yếu tố ảnh hưởng tới khả tạo ảnh mẫu ánh sáng cấu trúc bằng phương pháp Projector 50 PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC CHƯƠNG III: NGHIÊN CỨU PHƯƠNG PHÁP TẠO ÁNH SÁNG CẤU TRÚC VÂN DẠNG SIN BẰNG MÁY CHIẾU 54 3.1 Cơ sở lý thuyết của phương pháp tạo ánh sáng cấu trúc vân dạng Sin bằng máy chiếu 54 3.2 Cấu tạo máy chiếu 55 3.2.1 Công nghệ LCD 56 3.2.2 Công nghệ DLP 58 3.2.3 Công nghệ LCOS - Liquid Crystal on Silicon 61 3.2 Phần mềm tạo ảnh chiếu 61 3.2.1 Cơ sở lý thuyết 61 3.2.2 Phần mềm 62 3.2.3 Phần mềm tạo ảnh sin .64 CHƯƠNG IV: THỰC NGHIỆM CHIẾU ÁNH SÁNG CẤU TRÚC BẰNG PHƯƠNG PHÁP MÁY CHIẾU 69 4.1 Xây dựng mô hình thực nghiệm chiếu ánh sáng cấu trúc bằng máy chiếu .69 4.2 Thông số của Camera 72 4.3 Mô hình thực nghiệm thực tế 74 4.4 Thực nghiệm 75 4.4.1 Mục đích thực nghiệm: .75 4.4.2 Nội dung thực nghiệm 76 4.4.3 Tiến hành thực nghiệm 76 4.5 Đánh giá kết quả thực nghiệm 88 4.5.1 Sự phân bố các màu 88 4.5.2 Thay đổi cường độ sáng của vân mẫu: .89 4.5.3 Sự suy giảm cường độ của vùng biên ảnh so với vùng trung tâm 90 KẾT LUẬN CHUNG 92 TÀI LIỆU THAM KHẢO 94 PHỤ LỤC 95 PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC DANH MỤC HÌNH VẼ Hình 1.1 Phương pháp quét 3D sử dụng ánh sáng cấu trúc 10 Hình 1.2: Sơ đồ nguyên lý đo theo phản xạ 11 Hình 1.3: Sơ đồ nguyên lý đo theo phương pháp tạo ảnh 12 Hình 1.4: Nguyên lý quét vệt bề mặt chi tiết đo sử dụng hệ quang 12 Hình 1.5 Chiếu sáng ánh sáng cấu trúc 13 Hình 1.6 Các ví dụ ánh sáng cấu trúc 14 Hình 1.7 Nguyên lý tam giác lượng 15 Hình 1.8 :Nguyên lý quét 3D sử dụng ánh sáng cấu trúc 16 Hình 1.9: Một số ứng dụng thiết bị quét 3D 19 Hình 1.10: Máy quét 3D Rexcan CS+ hãng Solutionix 20 Hình 1.11: Máy quét Hexatro 3D hãng metrology 21 Hình 1.12: Máy quét hãng GFM 21 Hình1.13: Mơ hình thí nghiệm trường Đại Học Hartford 22 Hình 1.14: Máy quét Gage 3D 6100 23 Hình 2.1: Các dạng ánh sáng cấu trúc 24 Hình 2.2 Mẫu mã nhị phân 25 Hình 2.3: Mơ hình mẫu maã hóa cấp độ xám Hilbert 26 Hình 2.4: Phương pháp dịch pha với ảnh chiếu 28 Hình 2.5: Tính toán độ sâu Z phương pháp dịch pha 29 Hình 2.6: Quá trình gỡ bỏ pha mang 30 Hình 2.7: Kết hợp chiếu mã hóa xám với phương pháp dịch pha 31 Hình 2.8: Phương pháp quang trắc .32 Hình 2.9 :Máy ảnh cầu vồng 3D .33 Hình 2.10: Mẫu chiếu tạo kết hợp màu 34 Hình 2.11: Đánh dấu đường cách sử dụng màu sắc .35 PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC Hình 2.12: Mẫu chiếu có đường chiếu mã hóa gián đoạn 35 Hình 2.13: Mẫu chiếu các đường đánh dấu cách sử dụng lặp lặp lại mẫu mức xám .36 Hình 2.14: Mơ tả dãy De Bruijn mẫu chiếu sử dụng chuỗi De Bruijn ( k=5, n=3) 37 Hình 2.15: Mảng 31 x 33 PRBA với kích thước subwindow 5x .38 Hình 2.16 Mơ hình mã nhỏ 39 Hình 2.17 Một ví dụ lưới màu sắc 39 Hình 2.18: Ví dụ mảng 2D mã đốm màu sắc 40 Hình 2.19 Ví dụ kết hợp hai mã vạch 1D thành mạng lưới số mơ hình D…………………………………………………………………………………… …41 Hình 2.20: Ngun lý giao thoa (a)-(b) vân giao thoa hai nguồn sáng điểm kết hợp (c)-(d) vân giao thoa hai nguồn sáng phẳng kết hợp 43 Hình 2.21 Hệ giao thoa Twyman – Green .45 Hình 2.22 Hệ giao thoa Mach-Zehnder……………………………………… ….45 Hình 2.23 Hệ giao thoa Fizeau 46 Hình 2.24.Sơ đồ nguyên lý tạo ánh sáng cấu trúc chiếu sáng qua cách tử 47 Hình 2.25 Hệ vân thu từ phương pháp tạo ánh sáng cấu trúc cách tử 48 Hình 2.26: Hệ thống thu nhận sử dụng camera .49 Hình 2.27 Phương pháp tạo ánh sáng cấu trúc máy chiếu 49 Hình 2.28 Quang sai méo ảnh 52 Hình 3.1 Sơ đồ nguyên lý cấu tạo máy chiếu LCD 56 Hình 3.2 Sơ đồ nguyên lý cấu tạo máy chiếu DLP .59 Hình 3.3 Hiệu ứng ca-rơ .59 Hình 3.4 Lưu đồ chương trình phần mềm tạo ảnh Sin……………………………… 64 Hình 3.5 Giao diện phần mềm tạo ảnh sin viết Matlab 64 Hình 3.6: ảnh hình sin bước sóng 30 pixel lệch pha 120° .65 Hình 3.7: ảnh hình Sin bước sóng 50 pixel lệch pha 120° 65 Hình 3.8 Lưu đồ xử lý cường độ ảnh……………………………………………………66 PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC Hình 3.9 Giao diện phần mềm xử lý cường độ ánh sáng…………………………… 67 Hình 3.10 Cường độ ảnh lệch pha 120° có bước sóng 50 pixel sau xử lý phần mềm .68 Hình 4.1 Sơ đồ mơ hình thực nghiệm 69 Hình 4.2 Máy chiếu HP 70 Hình 4.3 Máy chiếu Sony VPL-CX21 .71 Hình 4.4 Camera DFK 41BU02 .72 Hình 4.5: Mơ hình thực nghiệm thực tế 74 Hình 4.6: Ảnh chiếu thực tế 75 Hình 4.7 Ảnh ghi xám camera thu lại 76 Hình 4.8 Biểu đồ biểu thị cường độ ảnh ghi xám .77 Hình 4.9: Ảnh GS có cường độ sáng 85 theo cảm biến CCD chiếu lên ghi xám 78 Hình 4.10 Biểu đồ biểu thị cường độ sáng ảnh thu 78 Hình 4.11 ảnh R(a), G(b), B(c), GS(d) chụp lại .80 Hình 4.12: Biểu bồ giá trị cường độ ảnh R(a),G(b),B(c),GS(d) .81 Hình 4.13: Ảnh GS có cường độ sáng 85 theo độ nhạy CCD chiếu lên ghi xám chụp lại xử lý cường độ: máy chiếu HP (bên trái), Sony (bên phải) 83 Hình 4.14 ảnh GS chụp lại từ khác 85 Hình 4.15 Biểu đồ so sánh giá trị cường độ sáng ảnh GS chiếu khác 85 Hình 4.16 ảnh GS có cường độ ánh sáng khác 86 Hình 4.17 Biểu đồ so sánh giá trị cường độ sáng ảnh tạo với giá trị độ rọi ban đầu khác 87 Hình 4.18 Đồ thị suy giảm cường độ biên ảnh 90 PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC LỜI CAM ĐOAN Tôi xin cam đoan bản luận văn này với đề tài “Nghiên cứu các phương pháp tạo ánh sáng cấu trúc” cơng trình nghiên cứu của riêng tơi và chưa cơng bớ bất cơng trình khác Các số liệu nêu luận văn là trung thực Hà Nội, ngày 15 tháng 05 năm 2014 Tác giả luận văn Phạm Thái Ninh PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC MỞ ĐẦU Lý chọn đề tài: Xây dựng mơ hình 3D của vật thể có rất nhiều ứng dụng thực tiễn các lĩnh vực khoa học kĩ thuật, đặc biệt ngành khí như:  Xác định biên dạng của mặt cắt chi tiết gia công để kiểm tra để theo dõi quá trình gia công từ đó điều chỉnh kích các thông số công nghệ  Ứng dụng quét vật thể chế tạo khuôn mẫu và kiểm tra những sai số hình học, sai số chế tạo của khuôn  Ứng dụng nghệ thuật điêu khắc  Ứng dụng công nghệ tạo mẫu nhanh  Một số các phương pháp biết đến sử dụng ánh sáng cấu trúc để xây dựng mơ hình 3D của vật thể Trên thế giới xuất hiện nhiều thế hệ máy quét sử dụng ánh sáng cấu trúc đạt đợ xác cao và phạm vi đo lớn Ở Việt Nam, việc nghiên cứu phương pháp ánh sáng cấu trúc còn gặp nhiều khó khăn và chưa có mợt cơng trình nghiên cứu mang tính tởng quan đưa chế tạo thiết bị sử dụng phương pháp này nhằm đáp ứng nhu cầu ngày cao của công nghiệp phục vụ cuộc sống Mặt khác giá cả thiết bị đo quét này thường rất cao có lên đến vài chục hoặc vài trăm ngàn đô la Mỹ Do đó, việc nghiên cứu phương pháp này có vai trò rất lớn đáp ứng nhu cầu nghiên cứu học tập phát triển thành sản phẩm mang tính thương mại phục vụ nhiều lĩnh vực c̣c sớng Mục đích nghiên cứu luận văn Tìm hiểu về ánh sáng cấu trúc, dạng thể hiện của nó và các phương pháp tạo ánh sáng cấu trúc PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC Nghiên cứu phương pháp tạo ánh sáng cấu trúc bằng máy chiếu với ảnh mẫu ánh sáng cấu trúc dạng Sin tạo thông qua hệ quang phần mềm Tiến hành thực nghiệm tạo ánh sáng cấu trúc có dạng Sin bằng mơ hình thực tế Qua đó đánh giá các sai sớ của phương pháp, từ đó tìm giải pháp khắc phục để ánh sáng mẫu tạo dạng Sin có bước sóng, cường độ gần với mẫu lý thuyết nhất Các nội dung luận văn Nợi dung trình bày những sở lý thuyết, các nguyên lý cấu tạo, các phương pháp tạo ánh sáng cấu trúc Khảo sát một số yếu tố ảnh hưởng đến đợ xác xây dựng mơ hình thực nghiệm Luận văn bao gồm các chương sau: Chương 1: Tổng quan phương pháp quét 3D sử dụng ánh sáng cấu trúc: Trong chương này trình bày các khái niệm về ánh sáng cấu trúc, cấu tạo và nguyên lý hoạt động của phương pháp quét biên dạng 3D bằng ánh sáng cấu trúc Chương 2: Tìm hiểu ánh sáng cấu trúc: Trong chương này trình bày các dạng bản và các phương pháp tạo ánh sáng cấu trúc những yếu tố ảnh hưởng tới độ chính xác của phương pháp Chương 3: Nghiên cứu phương pháp tạo ánh sáng cấu trúc máy chiếu: Trong chương này trình bày những vấn đề sâu vào phương pháp tạo ánh sáng cấu trúc bằng máy chiếu, từ đó xây dựng phần mềm tạo ánh sáng cấu trúc bằng máy chiếu và phần mềm xử lý cường độ ánh sáng từ ảnh thu qua Camera Chương 4: Thực nghiệm đánh giá kết quả: Nội dung chủ yếu của chương này là xây dựng một mô hình thực nghiệm thực tế về phương pháp tạo ánh sáng cấu trúc, đánh giá sơ bộ các kết quả đạt về các yếu tố ảnh hưởng tới phương pháp Kết quả nghiên cứu của đề tài là tìm hiểu bản về ánh sáng cấu trúc, các phương pháp tạo ánh sáng cấu trúc và một mô hình thực nghiệm về phương pháp tạo ánh sáng cấu trúc bằng máy chiếu với các bộ phận tự chế tạo nước và các thiết bị sử dụng camera, máy chiếu có sẵn thị trường PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC Luận văn là sự tổng hợp sự tổng hợp kiến thức của nhiều lĩnh vực Cơ khí, quang học, kỹ thuật điện – điên tử, công nghệ thông tin và hồn thành thời gian tương đới ngắn, đó khơng thể tránh khỏi những sai sót Rất mong nhận những ý kiến đóng góp quý báu của thày cô và các đồng nghiệp để đề tài hồn thiện Ći cùng cho phép tơi chân thành cảm ơn TS Nguyễn Văn Vinh tận tình hướng dẫn tơi q trình làm ḷn văn Cảm ơn các thầy cô giáo Bộ môn Cơ khí chính xác & Quang học - Viện Cơ khí – Trường đại học Bách Khoa Hà Nội nhiệt tình giúp đỡ tơi hồn thành nợi dung của ḷn văn này PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC CHƯƠNG I: TỔNG QUAN VỀ PHƯƠNG PHÁP QUÉT 3D BẰNG ÁNH SÁNG CẤU TRÚC 1.1 Khái niệm phương pháp quét 3D bằng ánh sáng cấu trúc Phương pháp quét biên dạng bề mặt 3D bằng ánh sáng cấu trúc đo lường là phương pháp đo theo nguyên lý không tiếp xúc Đây là phương pháp nghiên cứu rất nhiều giai đoạn hiện Từ lý thuyết về quang sóng thành tựu của khoa học máy tính sự phát triển của công nghệ điện tử phương pháp nghiên cứu phát triển và có những ứng dụng thực tiễn đo đạc góp phần sản xuất (a) (b) (c) Hình 1.1 Phương pháp quét 3D sử dụng ánh sáng cấu trúc [1] Hình 1.1 là nguyên lý của phương pháp là trình chiếu dạng ánh sáng mẫu , hình ảnh bề mặt chiếu sáng thu lại bằng camera Sử dụng quan hệ hình học giữa máy chiếu camera có thể xác định độ sâu của vật thể dựa vào phương pháp tam giác lượng Từ đó có thể sử dụng để xây dựng lại mợt cách xác hình dáng hình học của bề mặt chi tiết  Hình 1.1(a): Nguyên lý đo điểm: PHẠM THÁI NINH 10 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC anh1=zeros([kty ktx],'uint8'); anhRGB=zeros([kty ktx],'uint8'); anhRGB(:,:,3)=anh1; anhRGB(:,:,2)=anh1; for j=1:bdf for i=1:ktx j1=((i-1)+(c/d)*(j-1))*360/c; sinx1(:,i,j)=(255/2)*sin(j1*(2*pi)/360)+(255/2); end end if loaianhSN==1 &&loaianhRGB==4 for j=1:bdf for i=1:ktx j1=((i-1)+(c/d)*(j-1))*360/c; sinx1(:,i,j)=(255/2)*sin(j1*(2*pi)/360)+(255/2); end end axes(handles.axes1); cla(handles.axes1); axis equal; axis on; imshow(sinx1(:,:,1)); end for p=1:1:bdf if loaianhSN==1 &&loaianhRGB==1 anhRGB(:,:,1,p)=sinx1(:,:,p); axes(handles.axes1); cla(handles.axes1); axis equal; axis on; imshow(anhRGB(:,:,:,p)); PHẠM THÁI NINH 98 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC end if loaianhSN==1 &&loaianhRGB==2 anhRGB(:,:,3,p)=sinx1(:,:,p); axes(handles.axes1); cla(handles.axes1); axis equal; axis on; imshow(anhRGB(:,:,:,p)); end if loaianhSN==1 &&loaianhRGB==3 anhRGB(:,:,2,p)=sinx1(:,:,p); axes(handles.axes1); cla(handles.axes1); axis equal; axis on; imshow(anhRGB(:,:,:,p)); end end soold=1; if loaianhSN==2 && loaianhRGB==4 anhNGS=zeros([kty ktx],'uint8'); for i=1:1:log2(ktx) if i==1 sopixel=ktx/2; else sopixel=sopixel/2; end sodem=ktx/sopixel; for j=1:1:sodem if mod(j,2)==0 for k=soold:1:(soold+sopixel+1) PHẠM THÁI NINH 99 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC anhNGS(:,k,i+1)=255; end end soold=sopixel*j; end end anhNGS(:,:,log2(ktx))=255; end %for i=1:1:log2(ktx) % figure, % imshow(anhNGS(:,:,i)); %end % - Executes on button press in LuuAnh function LuuAnh_Callback(hObject, eventdata, handles) % hObject handle to LuuAnh (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global duongdan path anhRGB anhNGS loaianhRGB loaianhSN sinx1 ktx soanh bdf path1=cd; if duongdan==0 [path,duongdan]=tao_thu_muc_luu_anh(); end cd(path1); soanh=0; if loaianhSN==1 for p=1:1:bdf switch loaianhRGB case luu_anh(soanh,anhRGB(:,:,:,p),duongdan,'AnhSinR'); case luu_anh(soanh,anhRGB(:,:,:,p),duongdan,'AnhSinG'); PHẠM THÁI NINH 100 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC case luu_anh(soanh,anhRGB(:,:,:,p),duongdan,'AnhSinB'); case luu_anh(soanh,sinx1(:,:,p),duongdan,'AnhSinNP'); end soanh=soanh+1; end end if loaianhSN==2 t=1; for i=soanh:1:(log2(ktx)+soanh-1) luu_anh(i,anhNGS(:,:,t),duongdan,'AnhNGS'); t=t+1; soanh=soanh+1; end end function KTX_Callback(hObject, eventdata, handles) % hObject handle to KTX (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of KTX as text % str2double(get(hObject,'String')) returns contents of KTX as a double function KTY_Callback(hObject, eventdata, handles) % hObject handle to KTY (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of KTY as text % str2double(get(hObject,'String')) returns contents of KTY as a double % - Executes during object creation, after setting all properties function KTY_CreateFcn(hObject, eventdata, handles) % hObject handle to KTY (see GCBO) PHẠM THÁI NINH 101 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function BS_Callback(hObject, eventdata, handles) % hObject handle to BS (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of BS as text % str2double(get(hObject,'String')) returns contents of BS as a double function BDP_Callback(hObject, eventdata, handles) % hObject handle to BDP (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of BDP as text % str2double(get(hObject,'String')) returns contents of BDP as a double % - Executes when selected object is changed in LoaiAnh1 function LoaiAnh1_SelectionChangeFcn(hObject, eventdata, handles) % hObject handle to the selected object in LoaiAnh1 % eventdata structure with the following fields (see UIBUTTONGROUP) % EventName: string 'SelectionChanged' (read only) % OldValue: handle of the previously selected object or empty if none was selected % NewValue: handle of the currently selected object % handles structure with handles and user data (see GUIDATA) global loaianhSN newButton=get(eventdata.NewValue,'tag'); switch newButton PHẠM THÁI NINH 102 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC case 'ANP' loaianhSN=2; case 'ASIN' loaianhSN=1; end % - Executes when selected object is changed in LoaiAnh2 function LoaiAnh2_SelectionChangeFcn(hObject, eventdata, handles) % hObject handle to the selected object in LoaiAnh2 % eventdata structure with the following fields (see UIBUTTONGROUP) % EventName: string 'SelectionChanged' (read only) % OldValue: handle of the previously selected object or empty if none was selected % NewValue: handle of the currently selected object % handles structure with handles and user data (see GUIDATA) global loaianhRGB newbtt=get(eventdata.NewValue,'tag'); switch newbtt case 'AR' loaianhRGB=1; case 'AB' loaianhRGB=2; case 'AG' loaianhRGB=3; case 'AGS' loaianhRGB=4; end % - Executes during object creation, after setting all properties function BDP_CreateFcn(hObject, eventdata, handles) % hObject handle to BDP (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows PHẠM THÁI NINH 103 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % - Executes when uipanel1 is resized function uipanel1_ResizeFcn(hObject, eventdata, handles) % hObject handle to uipanel1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % - Executes during object creation, after setting all properties function BS_CreateFcn(hObject, eventdata, handles) % hObject handle to BS (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % - Executes during object creation, after setting all properties function KTX_CreateFcn(hObject, eventdata, handles) % hObject handle to KTX (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); PHẠM THÁI NINH 104 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC end Phần mềm xử lý cường độ ánh sáng Function varargout = xu_ly_cuong_do_anh(varargin) % XU_LY_CUONG_DO_ANH MATLAB code for xu_ly_cuong_do_anh.fig % XU_LY_CUONG_DO_ANH, by itself, creates a new XU_LY_CUONG_DO_ANH or raises the existing % singleton* % H = XU_LY_CUONG_DO_ANH returns the handle to a new XU_LY_CUONG_DO_ANH or the handle to % the existing singleton* % % XU_LY_CUONG_DO_ANH('CALLBACK',hObject,eventData,handles, ) calls the local % function named CALLBACK in XU_LY_CUONG_DO_ANH.M with the given input arguments % % XU_LY_CUONG_DO_ANH('Property','Value', ) creates a new XU_LY_CUONG_DO_ANH or raises the % existing singleton* Starting from the left, property value pairs are % applied to the GUI before xu_ly_cuong_do_anh_OpeningFcn gets called An % unrecognized property name or invalid value makes property application % stop All inputs are passed to xu_ly_cuong_do_anh_OpeningFcn via varargin % % *See GUI Options on GUIDE's Tools menu Choose "GUI allows only one % instance to run (singleton)" % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help xu_ly_cuong_do_anh % Last Modified by GUIDE v2.5 05-Nov-2013 11:07:16 % Begin initialization code - DO NOT EDIT PHẠM THÁI NINH 105 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, 'gui_Singleton', gui_Singleton, 'gui_OpeningFcn', @xu_ly_cuong_do_anh_OpeningFcn, 'gui_OutputFcn', @xu_ly_cuong_do_anh_OutputFcn, 'gui_LayoutFcn', [] , 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % - Executes just before xu_ly_cuong_do_anh is made visible function xu_ly_cuong_do_anh_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to xu_ly_cuong_do_anh (see VARARGIN) % Choose default command line output for xu_ly_cuong_do_anh handles.output = hObject; % Update handles structure guidata(hObject, handles); global coordinates coordinates=0; % UIWAIT makes xu_ly_cuong_do_anh wait for user response (see UIRESUME) PHẠM THÁI NINH 106 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC % uiwait(handles.figure1); % - Outputs from this function are returned to the command line function varargout = xu_ly_cuong_do_anh_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % - Executes on button press in LoadAnh function LoadAnh_Callback(hObject, eventdata, handles) % hObject handle to LoadAnh (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global I FileName PathName path path=cd; [FileName,PathName] = uigetfile({'*.jpg;*.tif;*.png;*.gif;*.bmp','All Image Files'}); cd(PathName); I=imread(FileName); cd(path); axes(handles.axes1); cla(handles.axes1); axis equal; axis on; hold on; imshow(I); imageHandle = imshow(I); set(imageHandle,'ButtonDownFcn',@ImageClickCallback); Function ImageClickCallback ( objectHandle , eventData ) global I coordinates m n k axesHandle = get(objectHandle,'Parent'); PHẠM THÁI NINH 107 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC coordinates = get(axesHandle,'CurrentPoint'); coordinates = coordinates(1,1:2); [m,n,k]=size(I); line1=1:1:n; li1=coordinates(2)*ones(1,n); hold on; plot(line1,li1,'.r'); line2=1:1:m; line2=line2'; li2=coordinates(1)*ones(m,1); li2=li2'; hold on; plot(li2,line2,'.r'); % - Executes on button press in XuLy function XuLy_Callback(hObject, eventdata, handles) % hObject handle to XuLy (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global I coordinates m n TrucX1 TrucX2 TrucX3 TrucY1 TrucY2 TrucY3 k if coordinates== coordinates(1)=str2num(get(handles.EditY,'String')); coordinates(2)=str2num(get(handles.EditX,'String')); end coordinates=round(coordinates); %I1=ycbcr2rgb(I); if k>1 for j=1:1:n TrucX1(1,j)=I(coordinates(1),j,1); end for j=1:1:n PHẠM THÁI NINH 108 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC TrucX2(1,j)=I(coordinates(1),j,2); end for j=1:1:n TrucX3(1,j)=I(coordinates(1),j,3); end for j=1:1:m TrucY1(1,j)=I(j,coordinates(2),1); end for j=1:1:m TrucY2(1,j)=I(j,coordinates(2),2); end for j=1:1:m TrucY3(1,j)=I(j,coordinates(2),3); end else for j=1:1:n TrucX1(1,j)=I(coordinates(1),j,1); end for j=1:1:m TrucY1(1,j)=I(j,coordinates(2),1); end end t=1:1:n; axes(handles.axes2); cla(handles.axes2); axis equal; axis on; hold on; if k>1 plot(t,TrucX1,'r'); plot(t,TrucX2,'g'); PHẠM THÁI NINH 109 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC plot(t,TrucX3,'b'); axes(handles.axes3); cla(handles.axes3); axis equal; axis on; hold on; k1=1:1:m; plot(k1,TrucY1,'*r'); plot(k1,TrucY2,'*g'); plot(k1,TrucY3,'*b'); else plot(t,TrucX1,'r'); axes(handles.axes3); cla(handles.axes3); axis equal; axis on; hold on; k1=1:1:m; plot(k1,TrucY1,'*r'); end % - Executes on button press in Save function Save_Callback(hObject, eventdata, handles) % hObject handle to Save (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global TrucX1 TrucX2 TrucX3 TrucY1 TrucY2 TrucY3 KQ=cat(2,TrucX1',TrucX2',TrucX3') KQ2=cat(2,TrucY1',TrucY2',TrucY3') path=cd; d1=datestr(now, 'dd-mm-yy'); d2 = datestr(now, 'HH-MM-SS'); PHẠM THÁI NINH 110 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC name=strcat('KetQuaX_Luc',d2,'_Ngay',d1,'.txt'); name2=strcat('KetQuaY_Luc',d2,'_Ngay',d1,'.txt'); dname = uigetdir(cd,'Chon folder luu ket qua'); cd(dname); dlmwrite(name, KQ, 'delimiter', '\t', 'precision', 6); dlmwrite(name2, KQ2, 'delimiter', '\t', 'precision', 6); cd(path); Function EditX_Callback(hObject, eventdata, handles) % hObject handle to EditX (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EditX as text % str2double(get(hObject,'String')) returns contents of EditX as a double % - Executes during object creation, after setting all properties function EditX_CreateFcn(hObject, eventdata, handles) % hObject handle to EditX (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end Function EditY_Callback(hObject, eventdata, handles) % hObject handle to EditY (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EditY as text % str2double(get(hObject,'String')) returns contents of EditY as a double % - Executes during object creation, after setting all properties PHẠM THÁI NINH 111 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC function EditY_CreateFcn(hObject, eventdata, handles) % hObject handle to EditY (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows % See ISPC and COMPUTER if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % - Executes on mouse press over axes background function axes1_ButtonDownFcn(hObject, eventdata, handles) % hObject handle to axes1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) PHẠM THÁI NINH 112 11BCTM.KH ... nguyên lý tạo ánh sáng cấu trúc chiếu sáng qua cách tử 47 Hình 2.25 Hệ vân thu từ phương pháp tạo ánh sáng cấu trúc cách tử 48 Hình 2.26: Hệ thống thu nhận sử dụng camera .49 Hình 2.27 Phương. .. nguyên lý tạo ánh sáng cấu trúc bằng chiếu sáng qua cách tử Cường độ ánh sáng xác định theo công thức:[4] (21) Hình 2.24 Sơ đồ nguyên lý tạo ánh sáng cấu trúc chiếu sáng qua cách tử Trên... nghiên cứu luận văn Tìm hiểu về ánh sáng cấu trúc, dạng thể hiện của nó và các phương pháp tạo ánh sáng cấu trúc PHẠM THÁI NINH 11BCTM.KH LUẬN VĂN THẠC SỸ KHOA HỌC Nghiên cứu phương

Ngày đăng: 24/07/2017, 22:29

Mục lục

  • danh muc hinh ve

  • tai lieu tham khao

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

Tài liệu liên quan