Báo cáo và CODE nén ảnh JPEG

27 3.4K 62
Báo cáo và CODE nén ảnh JPEG

Đ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

ĐẠI HỌC KỸ THUẬT – HẬU CẦN CAND ĐẠI HỌC KỸ THUẬT – HẬU CẦN CAND KHOA ĐIỆN TỬ VIỄN THÔNG ĐA PHƯƠNG TIỆN ĐỀ TÀI: TÌM HIỂU VỀ GIAO THỨC NÉN ẢNH JPEG Lớp: Nhóm sinh viên thực hiện: B7/D4 Phạm Thanh Tú Trần Minh Hoàng Nguyễn Đình Tuân Nguyễn Đình Tiến Nguyễn Châu Thanh Bắc Ninh, ngày 06 tháng 10 năm 2016 BÁO CÁO TRƯỜNG ĐẠI HỌC KỸ THUẬT - HẬU CẦN CAND KHOA KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG *** BÀI TẬP LỚN ĐA PHƯƠNG TIỆN TÌM HIỂU VỀ CHUẨN NÉN JPEG MỤC LỤC LỜI NÓI ĐẦU Ngày truyền thông đa phơng tiện - multimedia đợc ứng dụng nhanh chóng mở rộng nhiều dịch vụ thông tin phát triển thêm nhiều dịch vụ thông tin mới, thành phần thông tin quan trọng thiếu xa lộ thông tin Trong giới thông tin đa phơng tiện gần nh hầu hết hoạt động chế độ hội nghị truyền hình tơng tác có hình ảnh động cho phép nhiều ngừơi tham dự chế độ thời gian thực, thông qua môi trờng mạng nh LAN, WAN, Internet, xDSL, ISDN, (Intergrated serviceDigital Network), ATM, PSTN (Public Switched Telephone Network) Trong đồ án này, thực tiếp cận, nghiên cứu, tìm hiểu vấn đề sau công nghệ truyền thông đa phơng tiện: - Những vấn đề sở truyền thông đa phơng tiện tơng tác Họ giao thức H32x Hội nghị đa phơng tiện Những yêu cầu giải thông mạng đa phơng tiện Các tiêu chuẩn truyền dẫn mạng truyền thông đa phơng tiện Các phơng tiện truyền dẫn phần cứng mạng thông tin đa phơng tiện - Các giải pháp mạng sử dụng mạng LAN cho thông tin đa phơng tiện Trong khuôn khổ đề tài, nhóm tập trung vào số điểm chủ chốt nh loại hình Điểm - Điểm, có hai kết nối thực Video Conferencing với để từ tìm hiểu khảo sát số giải pháp công nghệ, lựa chọn chuẩn phù hợp, thiết bị phần cứng phần mền hội nghị truyền hình số công ty, hãng nỗi tiếng giới nh: CISCO, POLYCOM, SONY, VCON, PICTURETEL, ZYDACRON Giới thiệu Matlab 1.1 Khái niệm Matlab Matlab ngôn ngữ lập trình thực hành bậc cao sử dụng để giải toán kỹ thuật Matlab tích hợp việc tính toán, thể kết quả, cho phép lập trình, giao diện làm việc dễ dàng cho người sử dụng Dữ liệu với thư viện lập trình sẵn cho phép người sử dụng có ứng dụng sau • Sử dụng hàm có sẵn thư viện, phép tính toán học thông thường • Cho phép lập trình tạo ứng dụng • Cho phép mô mô hình thực tế • Phân tích, khảo sát hiển thị liệu • Với phần mềm đồ hoạ cực mạnh • Cho phép phát triển, giao tiếp với số phần mềm khác C++, Fortran 1.2 Tổng quan cấu trúc liệu Matlab, ứng dụng Matlab hệ thống tương giao, phần tử liệu mảng (mảng không đòi hỏi kích thước) Chúng cho phép giải vấn đề liên quan đến lập trình máy tính, đặc biệt sử dụng phép tính ma trận hay vector sử dụng ngôn ngữ C Fortran lập trình thực ứng dụng lập trình câu lệnh gọi từ Matlab Matlab viết tắt từ chữ “MATrix LABoratory” tức thư viện ma trận, từ phần mềm Matlab viết nhằm cung cấp cho việc truy cập vào phần mềm ma trận cách dễ dàng, phần mềm ma trận phát triển công trình Linpack Eispack Ngày Matlab phát triển Lapack Artpack tạo nên nghệ thuật phần mềm cho ma trận 1.2.1 Dữ liệu Dữ liệu MATLAB thể dạng ma trận (hoặc mảng–tổng quát), có kiểu liệu liệt kê sau đây: • Kiểu đơn single, kiểu có lợi nhớ liệu đòi hỏi byte nhớ hơn, kiểu liệu không sử dụng phép tính toán học, độ xác • Kiểu double kiểu kiểu thông dụng biến Matlab • Kiểu Sparse • Kiểu uint8, uint16 • Kiểu char ví dụ ‘Hello’ • Kiểu cell • Kiểu Structure Trong MATLAB kiểu liệu double kiểu mặc định sử dụng phép tính số học 1.2.2 Ứng dụng MATLAB tạo điều kiện thuận lợi cho: • Các khoá học toán học • Các kỹ sư, nhà nghiên cứu khoa học • Dùng MATLAB để tính toán, nghiên cứu tạo sản phẩm tốt sản xuất 1.2.3 Toolbox công cụ quan trọng Matlab Công cụ MATLAB cung cấp cho phép bạn ứng dụng kỹ thuật để phân tích, thiết kế, mô mô hình Ta tìm thấy toolbox mô trường làm việc • Mạng nơron • Logic mờ • Simulink 1.3 Hệ thống MATLAB Hệ thống giao diện MATLAB chia thành phần: • Môi trường phát triển Đây nơi đặt công cụ, phương tiện giúp sử dụng lệnh file, ta liệt kê số sau + Desktop + Command Window + Command History + Browsers for viewinghelp • Thư viện, hàm toán học bao gồm cấu trúc tính tổng, sin cosin, atan, atan2 etc , phép tính đơn giản đến phép tính phức tạp tính ma trận nghịch đảo, trị riêng, chuyển đổi fourier, laplace, symbolic library • Ngôn ngữ MATLAB Đó ngôn ngữ cao ma trận mảng, với dòng lệnh, hàm, cấu trúc liệu vào, lập trình hướng đối tượng • Đồ họa MATLAB Bao gồm câu lệnh thể đồ hạo môi trường 2D 3D, tạo hình ảnh chuyển động, cung cấp giao diện tương tác người sử dụng máy tính • Giao tiếp với ngôn ngữ khác MATLAB cho phép tương tác với ngôn ngữ khác C, Fortran … Lý thuyết tổng quan nén ảnh JPEG: 2.1 Lý thuyết chung chuẩn JPEG JPEG (Joint Photographic Expert Group) tên tổ chức nghiên cứu chuẩn nén ảnh (trước ISO) thành lập vào năm 1982 Năm 1986, JPEG thức thiết lập nhờ kết hợp nhóm ISO/IEC ITV Tiêu chuẩn ứng dụng nhiều lĩnh vực: lưu trữ ảnh, Fax màu, truyền ảnh báo chí, ảnh cho y học, camera số… Tiêu chuẩn JPEG (Joint Photographic Experts Group) định cho nén ảnh tĩnh đơn sắc màu Công nghệ nén ảnh JPEG công nghệ nén ảnh hiệu quả, cho phép làm việc với ảnh có nhiều màu kích cỡ lớn Tỷ lệ nén ảnh đạt mức vài chục lần Thông thường ảnh dùng bit (1 byte) hay 256 mức cường độ tương ứng màu đỏ, xanh xanh da trời Mỗi điểm ảnh cần byte để lưu mã màu, lượng byte ảnh màu chiếm gấp 24 lần ảnh trắng đen cỡ Với ảnh phương pháp nén ảnh không mát thông tin đạt tỉ lệ 2:1 hay 3:1 Nó không đáp ứng yêu cầu với số ứng dụng Ưu điểm cao phương pháp ảnh nén sau giải nén trùng khớp với ảnh ban đầu Một số phương pháp nén khác không để thông tin Lempel - Ziv and Welch (LZW) cho hệ số nén tới 6:1 Nhưng chưa thật đáp ứng yêu cầu đòi hỏi thực tế Phương pháp nén ảnh theo thuẩn JPEG cho hệ số nén tới 80:1 hay lớn hơn, ta phải chịu thông tin (ảnh sau bung nén khác với ảnh ban đầu), lượng thông tin mát tăng dần theo hệ số nén Tuy nhiên mát thông tin không bị làm cách cẩu thả JPEG tiến hành sửa đổi thông tin ảnh nén cho ảnh gần giống ảnh cũ, khiến phần đông người không nhận thấy khác biệt Và ta hoàn toàn quản lý mát cách hạn chế hệ số nén Như người dùng cân nhắc lợi việc tiết kiệm nhớ mức độ thông tin ảnh, để chọn phương án thích hợp 2.2 Nguyên lý nén chuẩn JPEG: Phương pháp nén ảnh JPEG dựa nguyên lý sau: ảnh màu không gian màu RGB (red Green Blue) biến đổi hệ YUV (hay YCbCr) (điều thiết, thực cho kết nén cao hơn) Hệ YUV kết nghiên cứu nhà sản xuất vô tuyến truyền hình hệ Pal, Secam NTSC, nhận thấy tín hiệu video phân thành phần Y, U, V (cũng phân theo màu chuẩn đỏ, xanh xanh da trời) Và điều hệ nhãn thị người nhạy cảm với thành phần Y nhạy cảm với hai loại U V Phương pháp JPEG nắm bắt phát để tách thông tin thừa ảnh Tỉ số nén thành phần Y ảnh nhỏ so với U, V, người ta nhận thấy thay đổi U V so với Y JPEG sử dụng cho nhiều ứng dụng với ảnh động cho chất lượng ảnh khôi phục tốt tính toán so với nén MPEG JPEG nén hình ảnh sử dụng rộng rãi việc phát triển trang web so với bitmap (phần mở rộng bmp) Những ảnh JPEG chiếm không gian tải nhanh chóng truy cập trang web Nén JPEG thực bốn phương mã hóa là: Mã (sequential DCT-based): ảnh mã hóa theo kiểu quét từ trái qua phải, từ xuống dựa khối DCT Mã hóa lũy tiến (progressive DCT-based): ảnh mã hóa kiểu quét phức hợp theo chế độ phân giải không gian cho ứng dụng kiểu băng hẹp thời gian truyền dẫn có dài Mã hóa không tổn thất (lossless): ảnh đảm bảo khôi phục xác cho giá trị mẫu nguồn Thông tin không cần thiết cắt bỏ hiệu nén thấp so với phương pháp có tổn thất Mã hóa phân cấp (hierarchical): ảnh mã hóa chế độ phân giải không gian phức hợp, ảnh có độ phân giải thấp có thểđược truy xuất hiển thị mà không cần giải nén ảnh có độ phân giải không gian cao Nén ảnh trình làm giảm thông tin dư thừa liệu Nén JPEG (Joint Photographic Expert Group) chuẩn nén ảnh ứng dụng nhiều lĩnh vực: lưu trữ ảnh, Fax màu, truyền ảnh báo chí, ảnh cho y học, camera số… Tiêu chuẩn JPEG định cho nén ảnh tĩnh đơn sắc màu Tuy nhiên sử dụng cho nhiều ứng dụng ảnh động cho chất lượng ảnh khôi phục tốt Hình 1.1 Sơ đồ nén JPEG Trong đó: 2.2.1 Chuyển ảnh quét thành khối 8x8: MB (Marco Block): block tín hiệu chói Y 2, block tín hiệu hiệu màu Block ma trận điểm ảnh 8x8 pixel Mục đích: tính toán DCT cho vùng dư thừa liệu khác Tất block có kích thước block ma trận điểm ảnh 8×8 pixel lấy từ ảnh hình theo chiều từ trái sang phải, từ xuống Kích thước block 8×8 chọn hai lý sau: Thứ nhất, qua việc nghiên cứu cho thấy hàm tương quan suy giảm nhanh khoảng cách pixel vượt 10 C(u), C(v) = 2.2.7 Lượng tử hóa Chức bản: chia hệ số F(u,v) cho hệ số vị trí tương ứng bảng lượng tử Q(u,v) để biểu diễn số lần nhỏ giá trị cho phép hệ số DCT Fq(u, v) = Hình 1.3 Lượng tử hóa 2.2.8 Máy quét zigzac Mục đích: biến đổi mảng hai chiều hệ số Fq(u,v) thành chuỗi số chiều 13 Hình 1.4 Zig Zag 14 2.2.9 Mã hóa Entropy Mục đích: Làm giảm độ dư thừa thống kê phần tử mã hóa để truyền Mã hóa entropy sử dụng mã hóa VLC mã hóa RLC RLC (Run Length Code): mã hóa độ dài chạy thực mã hóa hệ số khác sau giá trị DC từ mã bao gồm thông số: Số lượng chạy trước Mức sau lượng tử hóa End of Block (EOB) dùng biết tất hệ số khối VLC (Variable Length Code): Mã hóa độ dài biến đổi thực thi cách đặt từ mã ngắn cho mức có xác suất xuất cao từ mã dài cho mức có xác suất xuất thấp 15 Hình 1.5 Mã hóa Entropy 16 Hình 1.6 Quá trình nén Kết mô 3.1 Giao diện chương trình mô nút 3.1.1 Giao diện chương trình: 17 3.1.2 Nút bấm Nút bấm « ChonAnh » đưa đến giao diện « chon mot anh bat ky » 3.2 Mô hình nén : Ảnh 8x8 Bảng lượng tử hóa Ảnh 8x8 Ảnh Gốc Lượng tử hóa Ảnh 8x8 … DCT Mã hóa Ảnh 8x8 Ảnh nén Hình 2.7 Mô hình nén hoạt động (Bao gồm giao diện) function varargout = untitled(varargin) % UNTITLED MATLAB code for untitled.fig 18 3.3 C o d e % UNTITLED, by itself, creates a new UNTITLED or raises the existing % singleton* % % H = UNTITLED returns the handle to a new UNTITLED or the handle % the existing singleton* to % % local UNTITLED('CALLBACK',hObject,eventData,handles, ) calls the % function named CALLBACK in UNTITLED.M with the given input arguments % % UNTITLED('Property','Value', ) creates a new UNTITLED or raises the % existing singleton* Starting from the left, property value pairs are % applied to the GUI before untitled_OpeningFcn gets called An % application % unrecognized property name or invalid value makes property stop All inputs are passed to untitled_OpeningFcn via varargin % % only one % *See GUI Options on GUIDE's Tools menu Choose "GUI allows instance to run (singleton)" % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help untitled 19 % Last Modified by GUIDE v2.5 28-Nov-2016 18:42:57 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, 'gui_Singleton', gui_Singleton, 'gui_OpeningFcn', @untitled_OpeningFcn, 'gui_OutputFcn', @untitled_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 untitled is made visible function untitled_OpeningFcn(hObject, eventdata, handles, varargin) 20 % 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 untitled (see VARARGIN) % Choose default command line output for untitled handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes untitled wait for user response (see UIRESUME) % uiwait(handles.figure1); % - Outputs from this function are returned to the command line function varargout = untitled_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; 21 % - Executes on button press in pushbutton1 function pushbutton1_Callback(hObject, eventdata, handles) % anh kich thuoc: 128x128 [filename,pathname]=uigetfile({'*.tif;*.bmp;*.gif;*.jpg'},'Chon mot anh bat ky'); X=imread([pathname,filename]); axes(handles.anh1); imshow(X); title('Anh goc'); size(X) %Hệ số chất lượng lượng tử hóa Q=[ 16 11 10 16 24 40 51 61; 12 12 14 19 26 58 60 55; 14 13 16 24 40 57 69 56; 14 17 22 29 51 87 80 62; 18 22 37 56 68 109 103 77; 24 35 55 64 81 104 113 92; 49 64 78 87 103 121 120 101; 72 92 95 98 112 100 103 99]; factor=1; Q=factor*Q; % Bước biến đổi zig zag 22 Order=[ 14 15 27 28; 13 16 26 29 42; 12 17 25 30 41 43; 11 18 24 31 40 44 53; 10 19 23 32 39 45 52 54; 20 22 33 38 46 51 55 60; 21 34 37 47 50 56 59 61; 35 36 48 49 57 58 62 63]; count=0; for i=1:16 for j=1:16 count=count+1; P(1:8,1:8,count)=X((i-1)*8+1:i*8,(j-1)*8+1:j*8); end end % bien doi DCT 2-D % Hệ số lượng tử hóa DCT for m=1:256 F(:,:,m)=round(dct2(P(:,:,m))); FF(:,:,m)=round(F(:,:,m) /Q); end % khoi phuc he so the DCT 2-D % khoi phuc anh 8x8 for m=1:256 FC(:,:,m)=FF(:,:,m) *Q; 23 PP(:,:,m)=round(idct2(FC(:,:,m))); err(:,:,m)=single(PP(:,:,m))-single(P(:,:,m)); % vector luong tu hoa end count=0; for i=1:16 for j=1:16 count=count+1; XX((i-1)*8+1:i*8,(j-1)*8+1:j*8)=PP(1:8,1:8,count); % khoi phuc anh end end % bac dieu chinh XX=uint8(XX); axes(handles.anh2); imshow(XX); imwrite(XX,'Anhdanen.jpg','jpg'); title('Anh nen JPEG'); 3.4 Kết mô Sau lần nén : 24 Hình 2.8 Nén lần Sau lần nén : Hình 2.9 Nén lần Nhận xét kết - Ảnh nén với hệ số nén cao - Chất lượng ảnh thấp, giảm dần sau lần nén 25 • - Sau lần nén : Ảnh có mờ không đáng kể Sau lần nén thứ : ảnh mờ rõ rệt Đánh giá: Đã mô thành công nén ảnh matlab Hiểu chi tiết trình nén ảnh, giải nén ảnh Cung cấp phương tiện cần 4.1 Kết luận Trong thời gian làm đề tài với hạn chế thời gian, tài liệu, sở vật chất hạn chế kiến thức đòi hỏi thân chúng em phải cố gắng tìm tòi nhiệt tình công việc nghiên cứu đề tài cuối đề tài hoàn thành trọn vẹn Đó kết thời gian dài nổ lực nghiên cứu chúng em hướng dẫn tận tình giáo viên hướng dẫn nên đề tài hoàn thành thời hạn Với đề tài chúng em vừa kiểm tra kiến thức mình, vừa thu số kiến thức phần mềm Matlab phẩn mềm toán học hay thông dụng Tuy thành công việc to lớn trình dẫn dắt chúng em làm quen với việc ứng dụng kiến thức học vào thực tế, tạo khả tự lập nghiên cứu vấn đề Tuy nhiên trình làm việc chúng em tránh khỏi sai sót Mong bảo thầy cô đóng góp ý kiến bạn bè để đề tài ngày hoàn thiện 26 Phân công công việc : Công việc Tổng quan Matlab Lý thuyết nén JPEG Mô phỏng, code Matlab Người thực Nguyễn Châu Thanh Trần Minh Hoàng, Nguyễn Đình Tuân Phạm Thanh Tú 27 [...]... nen JPEG' ); 3.4 Kết quả mô phỏng Sau 1 lần nén : 24 Hình 2.8 Nén lần 1 Sau 2 lần nén : Hình 2.9 Nén lần 2 4 Nhận xét kết quả - Ảnh nén với hệ số nén cao - Chất lượng ảnh thấp, giảm dần sau mỗi lần nén 25 • - Sau lần nén đầu tiên : Ảnh có mờ đi nhưng không đáng kể Sau lần nén thứ 2 : ảnh mờ đi rõ rệt Đánh giá: Đã mô phỏng thành công nén ảnh trên matlab Hiểu chi tiết về quá trình nén ảnh, giải nén ảnh. .. hiện cao và các từ mã dài cho các mức có xác suất xuất hiện thấp 15 Hình 1.5 Mã hóa Entropy 16 Hình 1.6 Quá trình nén 3 Kết quả mô phỏng 3.1 Giao diện chương trình mô phỏng và các nút 3.1.1 Giao diện chương trình: 17 3.1.2 Nút bấm Nút bấm « ChonAnh » đưa đến giao diện « chon mot anh bat ky » 3.2 Mô hình nén : Ảnh con 8x8 Bảng lượng tử hóa Ảnh con 8x8 Ảnh Gốc Lượng tử hóa Ảnh con 8x8 … DCT Mã hóa Ảnh con... việc tính toán và thiết kế phần cứng Nói chung, độ phức tạp về tính toán sẽ tăng nếu kích thước block tăng Dung lượng lưu trữ ảnh cũng phụ thuộc vào loại ảnh quét Nếu quét liên tục thì các block bao gồm các mẫu từ các dòng liên tục (lúc này nén ảnh theoframe) Ngược lại, trong trường hợp quét cách dòng, trong một block chỉ có các mẫu của một nửa ảnh Tóm lại, việc chia hình ảnh thành các ảnh con (block)... làm quen với việc ứng dụng kiến thức đã học vào thực tế, tạo một khả năng tự lập khi nghiên cứu một vấn đề nào đó Tuy nhiên trong quá trình làm việc chúng em không thể tránh khỏi sai sót Mong sự chỉ bảo của thầy cô và đóng góp ý kiến của bạn bè để đề tài ngày một hoàn thiện hơn 26 Phân công công việc : Công việc Tổng quan Matlab Lý thuyết nén JPEG Mô phỏng, code Matlab Người thực hiện Nguyễn Châu Thanh... chon mot anh bat ky » 3.2 Mô hình nén : Ảnh con 8x8 Bảng lượng tử hóa Ảnh con 8x8 Ảnh Gốc Lượng tử hóa Ảnh con 8x8 … DCT Mã hóa Ảnh con 8x8 Ảnh nén Hình 2.7 Mô hình nén hoạt động (Bao gồm cả giao diện) function varargout = untitled(varargin) % UNTITLED MATLAB code for untitled.fig 18 3.3 C o d e % UNTITLED, by itself, creates a new UNTITLED or raises the existing % singleton* % % H = UNTITLED returns... tòi và nhiệt tình trong công việc nghiên cứu đề tài và cuối cùng đề tài đã hoàn thành trọn vẹn Đó là kết quả của một thời gian dài nổ lực nghiên cứu của chúng em dưới sự hướng dẫn tận tình của giáo viên hướng dẫn nên đề tài đã hoàn thành đúng thời hạn Với đề tài này chúng em vừa kiểm tra được kiến thức của mình, vừa thu được một số kiến thức về phần mềm Matlab một trong những phẩn mềm toán học hay và. .. hóa để truyền Mã hóa entropy sử dụng mã hóa VLC và mã hóa RLC RLC (Run Length Code) : mã hóa độ dài chạy thực hiện mã hóa một hệ số khác 0 sau giá trị DC bằng một từ mã bao gồm 2 thông số: Số lượng 0 chạy trước nó Mức của nó sau khi lượng tử hóa End of Block (EOB) được dùng để cho biết tất cả các hệ số tiếp theo trong khối bằng 0 VLC (Variable Length Code) : Mã hóa độ dài biến đổi được thực thi bằng... 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 untitled is made visible function untitled_OpeningFcn(hObject, eventdata, handles, varargin) 20 % This function has no output args, see OutputFcn % hObject... số của khối DCT 8x8 f(j,k)- các mẫu gốc trong khối 8x8 pixel C(u), C(v) = Hệ số thứ nhất: Hình 1.2 Biến đổi DCT 2.2.6 Biến đổi Cosin rời rạc ngược IDCT Phép biến đổi DCT hai chiều là biến đổi đối xứng và biến đổi nghịch có thể tạo lại các mẫu f(j, k) trên cơ sở các hệ số F(u,v) theo công thức sau: F(u,v)- các hệ số của khối DCT 8x8 f(j,k)- các mẫu gốc trong khối 8x8 pixel 12 C(u), C(v) = 2.2.7 Lượng... trường hợp quét cách dòng, trong một block chỉ có các mẫu của một nửa ảnh Tóm lại, việc chia hình ảnh thành các ảnh con (block) sẽ thực sự có ý nghĩa cho bước chuyển vị tiếp theo 2.2.2 Chuyển mức điểm ảnh: Dịch mức tín hiệu chói Y xuống dưới bằng cách trừ từng giá trị pixel trong khối cho 128 Mục đích: dịch khoảng cực đại của tín hiệu Y xuống bằng với tín hiệu hiệu màu để đơn giản hóa việc thiết kế ... JPEG' ); 3.4 Kết mô Sau lần nén : 24 Hình 2.8 Nén lần Sau lần nén : Hình 2.9 Nén lần Nhận xét kết - Ảnh nén với hệ số nén cao - Chất lượng ảnh thấp, giảm dần sau lần nén 25 • - Sau lần nén : Ảnh. .. trữ ảnh, Fax màu, truyền ảnh báo chí, ảnh cho y học, camera số… Tiêu chuẩn JPEG (Joint Photographic Experts Group) định cho nén ảnh tĩnh đơn sắc màu Công nghệ nén ảnh JPEG công nghệ nén ảnh hiệu... chuẩn nén ảnh ứng dụng nhiều lĩnh vực: lưu trữ ảnh, Fax màu, truyền ảnh báo chí, ảnh cho y học, camera số… Tiêu chuẩn JPEG định cho nén ảnh tĩnh đơn sắc màu Tuy nhiên sử dụng cho nhiều ứng dụng ảnh

Ngày đăng: 07/12/2016, 23:26

Từ khóa liên quan

Mục lục

  • LỜI NÓI ĐẦU

  • 1. Giới thiệu về Matlab

    • 1.1. Khái niệm về Matlab

    • 1.2. Tổng quan về cấu trúc dữ liệu của Matlab, các ứng dụng

      • 1.2.1. Dữ liệu

      • 1.2.2. Ứng dụng

      • 1.2.3. Toolbox là một công cụ quan trọng trong Matlab

      • 1.3. Hệ thống MATLAB

      • 2. Lý thuyết tổng quan nén ảnh JPEG:

        • 2.1. Lý thuyết chung về chuẩn JPEG.

        • 2.2. Nguyên lý nén chuẩn JPEG:

          • 2.2.1. Chuyển ảnh quét thành khối 8x8:

          • 2.2.2. Chuyển mức điểm ảnh:

          • 2.2.3. Biến đổi cosine rời rạc DCT:

          • 2.2.4. DCT một chiều:

          • 2.2.5. DCT hai chiều

          • 2.2.6. Biến đổi Cosin rời rạc ngược IDCT

          • 2.2.7. Lượng tử hóa

          • 2.2.8. Máy quét zigzac

          • 2.2.9. Mã hóa Entropy

          • 3. Kết quả mô phỏng

            • 3.1. Giao diện chương trình mô phỏng  và các nút

              • 3.1.1. Giao diện chương trình:

              • 3.1.2. Nút bấm

              • 3.2. Mô hình nén :

              • 3.3. Code hoạt động (Bao gồm cả giao diện)

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

Tài liệu liên quan