Báo cáo xử lý ảnh biến đổi ảnh tùy chỉnh (Free Transform),

20 479 0
Báo cáo xử lý ảnh biến đổi ảnh tùy chỉnh (Free Transform),

Đ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

MỤC LỤC LỜI NÓI ĐẦU Trong năm gần công nghệ thông tin phát triển với tốc độ nhanh chóng phần cứng phần mềm Sự phát triển công nghệ thông tin thúc đẩy phát triển nhiều lĩnh vực xã hội khác như: y học, giáo dục, giải trí, kinh tế v.v Sự phát triển phần cứng phương diện thu nhận, hiển thị, với tốc độ xử mở nhiều hướng cho phát triển phần mềm, đặt biệt lĩnh vực xử ảnh công n ghệ thực ảo đời thâm nhập mạnh mẽ vào đời sống người Ảnh thu sau trình thu nhận ảnh phép biến đổi không tránh khỏi nhiễu khuyết thiếu Sự sai sót phần thiết bị quang học điện tử, phần khác thân phép biến đổi hoàn hảo, nên có ánh xạ thiếu hụt đến điểm ảnh kết Việc khắc phục nhược điểm vấn đề đặt cho hệ thống xử ảnh Các hệ xử ảnh trình phân tích ảnh, tăng cường ảnh để nâng cao chất lượng ảnh Do nguyên nhân khác nhau: chất lượng thiết bị thu nhận ảnh, nguồn sáng hay nhiễu, ảnh bị suy biến Do cần phải tăng cường khôi phục lại ảnh để làm bật số đặc tính ảnh, hay làm cho ảnh gần giống với trạng thái gốc, trạng thái trước ảnh bị biến dạng Với đề tài Biến đổi ảnh tùy chỉnh (Free Transform), chúng em áp dụng kỹ thuật nội suy ảnh song tuyến để biến đổi nâng cao chất lượng ảnh sau biến đổi Đề tài gồm ba chương: Chương 1: Một số khái niệm Chương 2: Một số phương pháp nội suy ảnh Chương 3: Ứng dụng nội suy ảnh song tuyến biến đổi tùy chỉnh hình ảnh (Free Transform) CHƯƠNG 1: MỘT SỐ KHÁI NIỆM 1, Điểm ảnh Ảnh thực tế (ảnh tự nhiên) ảnh liên tục không gian giá trị độ sáng Để xử ảnh máy tính, cần thiết phải tiến hành số hoá ảnh nhằm biến đổi gần ảnh liên tục thành tập điểm, phù hợp với ảnh thật vị trí (không gian) độ sáng (mức xám) Trong trình số hoá, người ta biến đổi tín hiệu liên tục sang tín hiệu rời rạc thông qua trình lấy mẫu (rời rạc hoá không gian), lượng hoá thành phần giá trị mà nguyên tắc mắt thường không phân biệt điểm kề Trong trình người ta sử dụng khái niệm điểm ảnh (pixel) Như ảnh tập hợp điểm ảnh Khi sử dụng đến nội suy việc phân biệt hai điểm ảnh kề việc cần thiết Điểm ảnh (pixel) xem dấu hiệu hay cường độ sáng toạ độ không gian đối tượng Mỗi pixel gồm cặp toạ độ x, y màu Như vậy, ảnh tập hợp điểm ảnh Khi số hoá, thường biểu diễn mảng hai chiều hay ma trận hai chiều I(n,p): phần tử có giá trị nguyên véc tơ cấu trúc màu, n dòng p cột Ta nói ảnh gồm n x p pixels Người ta thường kí hiệu I(x,y) để pixel Thường giá trị n chọn p 256 Một pixel lưu trữ 1, 4, hay 24 bit Mỗi điểm ảnh mã hoá biểu diễn dạng bít Cách mã hoá kinh điển thường dùng 16, 32 hay 64 mức Mã hoá 256 mức phổ dụng kỹ thuật Vì 2^8 = 256 (0, 1, , 255), nên với 256 mức, pixel mã hoá bit từ biểu diễn ảnh nhiều dạng khác Số pixel tạo nên ảnh gọi độ phân giải (resolution) 2, Độ phân giải ảnh Độ phân giải mật độ điểm ảnh ấn định ảnh số Khoảng cách điểm ảnh phải chọn cho mắt người thấy liên tục ảnh Việc lựa chọn khoảng cách thích hợp tạo nên mật độ phân bố độ phân giải, phân bố theo trục x, y không gian hai chiều Ví dụ: Với CGA(320x200) lưới điểm theo chiều ngang hình: 320 điểm chiều dọc x 200 điểm ảnh So sánh hình CGA 12 (Color Graphic Adaptor) thấy ảnh mịn hình CGA 17 Như diện tích rộng độ mịn ảnh đi, phóng to ảnh vậy, ảnh to bị vỡ hạt, độ mịn 3, Mức xám ảnh Mức xám điểm ảnh cường độ sáng gán giá trị số điểm Trong biểu diễn số ảnh đa mức xám, ảnh biểu diễn dạng ma trận hai chiều Mỗi phần tử ma trận biểu diễn cho mức xám hay cường độ ảnh vị trí Mỗi phần tử ma trận gọi phần tử ảnh điểm ảnh (pixel) Một điểm ảnh có hai đặc trưng vị trí (x,y) điểm ảnh độ xám 4, Một số loại ảnh - - Ảnh nhị phân: Trong ảnh nhị phân, pixel chứa hai giá trị nhị phân Hai giá trị tương ứng với bật tắt (on off ) Một ảnh nhị phân lưu trữ mảng lôgíc Ảnh RGB: • Một ảnh RGBA lưu trữ dạng mảng liệu có kích thước chiều m x n x k x alfa, định nghĩa giá trị màu red, green blue, giá trị alfa cho pixel riêng biệt Ảnh RGBA không sử dụng bảng màu Màu pixel định kết hợp giá trị R,G,B (Red, Green, Blue) trị số alfa lưu trữ mặt phẳng màu vị trí pixel Định dạng file đồ hoạ lưu trữ ảnh RGBA giống ảnh 24 bít R,G,B,A chiếm tương ứng bít Điều cho phép nhận 16,7 triệu màu khác • Một mảng RGBA thuộc lớp double, uint8 uint16 Trong mảng RGBA thuộc lớp double, thành phần màu có giá trị Một pixel mà thành phần màu (0,0,0,0) hiển thị với màu đen pixel mà thành phần màu (1,1,1,1) hiển thị với màu trắng Trong ảnh RGBA khoảng trắng tương ứng với giá trị cao màu riêng rẽ Chẳng hạn ảnh mặt phẳng R, vùng trắng đại diện cho tập trung cao màu đỏ khiết Nếu R trộn với G B ta có màu xám Vùng màu đen ảnh giá trị pixel mà không chứa màu đỏ R= Tương tự cho mặt phẳng màu G B 5, Thuộc tính ảnh - - Đường viền: đường viền vùng ảnh R tập hợp điểm ảnh vùng mà có hay nhiều lân cận bên vùng R Biên ảnh: Một điểm ảnh coi biên có thay đổi đột ngột mức xám Tập hợp điểm biên tạo thành đường bao ảnh Thuộc tính biên gắn liền điểm ảnh lân cận nó, giúp cho việc xác định đặc tính cặp điểm lân cận - Độ sắc nét ảnh: • Độ sắc nét khả phát chi tiết ảnh Mắt người nhạy cảm với thay đổi nhanh hay chậm độ sáng mặt phẳng ảnh nhạy cảm với thay đổi trung gian • Độ phân giải ảnh giới hạn khả phân giải mắt người Khi độ phân giải ảnh cao độ phân giải mắt người người cảm nhận ảnh • Độ phân giải quang học định nghĩa khoảng cách điểm ảnh gần mà người phân biệt • Mỗi ảnh có độ sắc nét, độ phân giải riêng, việc xử ảnh nhằm mục đích làm cho ảnh sắc nét hơn, đẹp hay gần với ảnh gốc hơn, biến đổi phương pháp nội suy làm cho ảnh có khả zoom tốt, mà đảm bảo độ sắc nét, tránh tượng nhiễu hay cưa • Để sử dụng phương pháp nội suy xử ảnh làm cho ảnh tốt phải trải qua trình tìm điểm ảnh thích hợp để chèn điểm ảnh vào, việc tìm kiếm người ta dựa vào toạ độ điểm ảnh, hay toạ độ pixel - Tọa độ ảnh • Tọa độ điểm ảnh Nhìn chung, phương pháp thuận tiện cho việc biểu diễn vị trí ảnh sử dụng toạ độ pixel Trong hệ toạ độ này, ảnh xử lưới phần tử riêng biệt đánh thứ tự từ đỉnh tới đáy từ trái sang phải Với toạ độ pixel, thành phần r (hàng) tăng từ xuống c (cột) tăng từ trái sang phải Hệ toạ độ pixel giá trị nguyên, có giá trị nằm khoảng chiều dài hàng hay cột • Tọa độ không gian Trong toạ độ không gian, vị trí ảnh định vị mặt phẳng chúng mô tả cặp x y (không phải r(hàng) c(cột) toạ độ pixel) Hệ toạ độ không gian gần tương ứng với hệ toạ độ pixel chừng mực Chẳng hạn, toạ độ không gian điểm pixel phân biệt với toạ độ pixel pixel Cũng có vài khác biệt, nhiên, tọa độ pixel, góc trái ảnh (1,1) trong toạ độ không gian, vị trí mặc định (0.5,0.5) Sự khác hệ toạ độ pixel rời rạc toạ độ không gian liên tục Cũng vậy, góc trái (1,1) hệ pixel, ta điểm gốc không quy cho hệ toạ độ không gian Một khác biệt dễ gây nhầm lẫn quy ước: thứ tự thành phần nằm ngang thẳng đứng phục vụ cho kí hiệu hai hệ thống Như đề cập trước đây, toạ độ pixel đại diện cặp (r,c) toạ độ không gian biểu diễn (x,y) Khi cú pháp cho hàm sử dụng r c, tham chiếu đến hệ toạ độ pixel Khi cú pháp sử dụng x, y ngầm định sử dụng hệ toạ độ không gian Khi sử dụng hệ toạ độ không gian không quy theo mặc định, toạ độ không gian ảnh tương ứng với toạ độ pixel Chẳng hạn, điểm pixel (5,3) có toạ độ không gian x=3, y=5 (nhớ thứ tự toạ độ bị đảo ngược ) Trong số tình huống, ta muốn sử dụng toạ độ không gian không quy (không mặc định) Chẳng hạn, ta góc trái ảnh điểm (19.0,7.5) thay cho (0.5,0,5) Nếu ta gọi hàm mà trả toạ độ cho ảnh này, toạ độ trả lại giá trị hệ toạ độ không quy 6, Nội suy Trong toán học giải tích số, phép nội suy phương pháp xây dựng điểm liệu phạm vi tập hợp rời rạc điểm liệu biết Trong kỹ thuật khoa học thường có số điểm liệu thu việc lấy mẫu hay thí nghiệm, thử xây dựng chức mà gần gũi phù hợp với điểm liệu Có thể nói nội suy giải thuật phần mềm dùng để thêm vào (hoặc bỏ bớt) số điểm ảnh ảnh kỹ thuật số Tiến trình nội suy dựa màu sắc điểm ảnh cũ để xác định màu cho điểm ảnh gần Một số máy ảnh số sử dụng giải thuật nội suy để tạo ảnh có dung lượng cao khả thu nhận cảm biến ảnh tăng cường khả zoom kỹ thuật số máy Hầu tất phần mềm chỉnh sửa ảnh sử dụng nhiều phương pháp nội suy Hình ảnh mịn màng, không bị "vỡ hạt " phóng to hay biến đổi ảnh tùy vào thuật toán sử dụng giải thuật nội suy 7, Nội suy song tuyến Trong toán học, nội suy song tuyến (Bilinear Interpolation) mở rộng nội suy tuyến tính cho nội suy hai biến Chìa khóa để thực ý tưởng nội suy tuyến tính hướng đầu tiên, sau nội suy lần theo hướng khác Nói cách khác, kỹ thuật sử dụng hàm biến đổi từ hình vuông kích thước [0,1]x[0,1] tới tứ giác không gian (tứ giác không thiết phải đồng phẳng) Minh họa phép nội suy Bilinear Interpolation Nếu giả sử tọa độ khối hình vuông x, y phép biến đổi B thực sau: B(x, y) = (1 - x) Phép biến đổi thực tương đương với hai việc Việc thứ nội suy cạnh AD BC thu điểm P Q P = (1 - y)A + yD Q = (1 - y)B + yC Việc nội suy đoạn PQ sử dụng thông số x: B(x, y) = (1-x)P + xQ Nội suy song tuyến (Bilinear) tương tự nội suy tuyến tính Lấy trung bình bốn điểm xung quanh lưới sử dụng để xác định giá trị nội suy Ví dụ: Tìm nội suy điểm P Bốn chấm màu đỏ hiển thị điểm liệu chấm màu xanh điểm mà cần nội suy Giả sử muốn tìm giá trị f chưa biết điểm P = (x, y) biết giá trị f bốn điểm Q11 = (x1, y1), Q12 = (x2, y2), Q21 = (x2, y1), Q22 = (x2, y2) Trong đó: y1: biến chứa liệu điểm dọc trục x1: biến có chứa điểm ngang trục x2: biến chứa điểm ngang nơi nội suy thực y2: biến có chứa điểm dọc nơi nội suy thực Đầu tiên nội suy theo hướng x cho kết quả: Chúng ta tiến hành nội suy theo hướng y kết quả: Điều cho phép tính f(x,y) CHƯƠNG 2: BIẾN ĐỔI ẢNH 1, Phương pháp biến đổi ảnh Khi ảnh tải lên, bao bọc khung hình chữ nhật có kích thước kích thước ảnh Khung hình chữ nhật có bốn đỉnh đánh dấu màu, từ điểm sử dụng chuột để thực số thao tác biến đổi ảnh Khi thực nhấn chuột vào điểm quan trọng hình ảnh kéo, hình chữ nhật vàng thay đổi kích thước theo chuột Khi dừng kéo ta có khung hình khác lúc cần hiển thị hình ảnh khung Để vẽ hình chữ nhật màu vàng bao quanh hình ảnh sau tải lên chương trình, sử dụng hàm: public void startFT() { if (pictureItem != null) { filter.Bitmap = pictureItem; vertex[0] = new PointF(imageLocation.X, imageLocation.Y); // goc toa vertex[1] = new PointF(imageLocation.X + pictureItem.Width, imageLocation.Y); // diem tren phai vertex[2] = new PointF(imageLocation.X + pictureItem.Width, imageLocation.Y + pictureItem.Height); // diem duoi phai vertex[3] = new PointF(imageLocation.X, imageLocation.Y + pictureItem.Height); // diem duoi trai for (int i = 0; i { // tao diem // recthandle[i] vertex[i].Y - 2, 4, 4); } < 4; i++) xung quanh anh, rong pixel pixel cua moi diem bi chom khoi anh = new RectangleF(vertex[i].X - 2, filter.FourCorners = vertex; } } Xét P thuộc khung cũ, P lúc xét bởi: Tọa độ điểm P =( *W, *H) Khi kéo chuột lên vị trí tạo khung với kích thước khác hoàn toàn khung cũ, điểm P’ ánh xạn điểm P thuộc khung cũ tính theo công thức cũ điểm P: private Bitmap getTransformedBitmap() // tao mot anh moi sau thuc hien bien doi { if (srcH == || srcW == 0) return null; ImageData destCB = new ImageData(); destCB.A = new byte[rect.Width, rect.Height]; destCB.B = new byte[rect.Width, rect.Height]; destCB.G = new byte[rect.Width, rect.Height]; destCB.R = new byte[rect.Width, rect.Height]; PointF ptInPlane = new PointF(); // tro xac dinh nhung diem nam vung anh int x1, y1, x2, y2; // dab, dbc, dcd, dda la khoang cach tu diem nao vung anh // toi cac canh cua da giac duoc tao boi ABCD double dab, dbc, dcd, dda; float dx1, dx2, dy1, dy2, dx1y1, dx1y2, dx2y1, dx2y2, nbyte; // dai cua cac vecto for (int y = 0; y < rect.Height; y++) { for (int x = 0; x < rect.Width; x++) { Point srcPt = new Point(x, y); srcPt.Offset(this.rect.Location); if (isOnPlaneABCD(srcPt)) { dab = Math.Abs((new Geometry.Vector(vertex[0], srcPt)).CrossProduct(AB)); dbc = Math.Abs((new Geometry.Vector(vertex[1], srcPt)).CrossProduct(BC)); dcd = Math.Abs((new Geometry.Vector(vertex[2], srcPt)).CrossProduct(CD)); dda = Math.Abs((new Geometry.Vector(vertex[3], srcPt)).CrossProduct(DA)); // toa cua cac diem (x,y) nam vung anh // toa cua diem anh truoc va sau transform giong ptInPlane.X = (float)(srcW * (dda / (dda + dbc))); ptInPlane.Y = (float)(srcH * (dab / (dab + dcd))); x1 = (int)ptInPlane.X; y1 = (int)ptInPlane.Y; if (x1 >= && x1 < srcW && y1 >= && y1 < srcH) { // noi suy la phep xay dung moi cac diem du lieu // pham vi mot tap roi rac nhung diem du lieu duoc biet // noi suy song tuyen duoc xay dung bang cach noi suy hai lan // theo hai huong khac nhau, hai huong chinh la cac canh cua anh if (isBilinear) { x2 = (x1 == srcW - 1) ? x1 : x1 + 1; y2 = (y1 == srcH - 1) ? y1 : y1 + 1; dx1 = ptInPlane.X - (float)x1; if (dx1 < 0) dx1 = 0; dx1 = 1f - dx1; dx2 = 1f - dx1; dy1 = ptInPlane.Y - (float)y1; if (dy1 < 0) dy1 = 0; dy1 = 1f - dy1; dy2 = 1f - dy1; dx1y1 dx1y2 dx2y1 dx2y2 = = = = dx1 dx1 dx2 dx2 * * * * dy1; dy2; dy1; dy2; nbyte = srcCB.A[x1, y1] * dx1y1 + y1] * dx2y1 + srcCB.A[x1, y2] * dx1y2 + srcCB.A[x2, y2] * dx2y2; destCB.A[x, y] = (byte)nbyte; nbyte = srcCB.B[x1, y1] * dx1y1 + y1] * dx2y1 + srcCB.B[x1, y2] * dx1y2 + srcCB.B[x2, y2] * dx2y2; destCB.B[x, y] = (byte)nbyte; nbyte = srcCB.G[x1, y1] * dx1y1 + y1] * dx2y1 + srcCB.G[x1, y2] * dx1y2 + srcCB.G[x2, y2] * dx2y2; destCB.G[x, y] = (byte)nbyte; nbyte = srcCB.R[x1, y1] * dx1y1 + y1] * dx2y1 + srcCB.R[x1, y2] * dx1y2 + srcCB.R[x2, y2] * dx2y2; destCB.R[x, y] = (byte)nbyte; } else { destCB.A[x, y] = srcCB.A[x1, y1]; destCB.B[x, y] = srcCB.B[x1, y1]; destCB.G[x, y] = srcCB.G[x1, y1]; destCB.R[x, y] = srcCB.R[x1, y1]; } } } } } return destCB.ToBitmap(); } srcCB.A[x2, srcCB.B[x2, srcCB.G[x2, srcCB.R[x2, Khi ánh xạ hết điểm ảnh cũ vào ảnh mới, có vấn đề với ảnh Bức ảnh co, kéo dãn dẫn tới vị nhòe, cưa Vì vậy, cần nội suy để ảnh có chất lượng tốt 2, Áp dụng phương pháp biến đổi ảnh Với phương pháp xác định biến đổi ảnh ta trọng tới bốn điểm đỉnh ảnh bị biến đổi Như với điểm ảnh ảnh biến đổi ta xác định thông qua phương pháp Các bước thực sau: • Lưu lại điểm đỉnh bị biến đổi • Duyệt ảnh qua chiều rộng chiều cao ảnh để xác định lại điểm pixel ảnh bị biến đổi • Lấy lại điểm ảnh tương ứng thông qua điểm đỉnh tương ứng lưu cách dùng phương pháp qua công thức: • W’, H’ chiều rộng chiều cao ảnh sau ảnh bị biến đổi • Với w1’, w2’, h1’, h2’ khoảng cách từ điểm cần xét đến cạnh A’D’, B’C’, A’B’, C’D’ sau ảnh bị biến đổi Vấn đề đặt ảnh biến đổi có độ sắc nét không ảnh ban đầu, phải nội suy byte màu điểm ảnh so với ảnh gốc để tạo độ mịn so với ảnh ban đầu chưa bị biến đổi CHƯƠNG 3: MỘT SỐ PHƯƠNG PHÁP NỘI SUY ẢNH Có nhiều phương pháp nội suy khác nhau, cần sử dụng phương pháp nội suy cho phù hợp tốc độ kinh tế Vì tính toán sử dụng phương pháp nội suy cần tính đến phương pháp cho độ xác đến bao nhiêu? Nó đắt bao nhiêu? Nội suy mịn bao nhiêu? Một số phương pháp nội suy phổ biến như: - Affine Interpolation (Nội suy tam giác) - Nearest Neighbor Interpolation (Nội suy pixelgần ) - Bicubic Interpolation (Nội suy song khối ) - Billinear Interpolation ( Nội suy song tuyến tính) - Trilinear Interpolation (Nội suy tam tuyến tính) - Nội suy không gian - Nội suy thời gian có bù chuyển động Ngoài nhiều phương pháp nội suy hình ảnh khác không sử dụng phổ biến, điều mà quan tâm giải thuật nội suy không thêm thông tin vào ảnh, thêm điểm ảnh làm tăng dung lượng tập tin Tuy nhiên phương pháp nội suy làm việc theo cách giống Trong trường hợp, để tính giá trị pixel nội suy, chúng tìm điểm ảnh mà pixel nằm Sau gán giá trị tới pixel cách tính toán trung bình có trọng số số pixel lân cận Trọng số dựa khoảng cách tới điểm xét Ứng dụng nội suy Trong xử ảnh, người ta sử dụng nhiều đến kỹ thuật nội suy Sau thu nhận ảnh người ta bắt đầu xử trình xử sử dụng đến kỹ thuật nội suy như: • Xử điền đầy (Filling a region): trình tô màu vùng định cách nội suy giá trị pixel từ viền vùng • Thay đổi kích thước ảnh phóng đại ảnh, quay ảnh, bóp méo … kỹ thuật nội suy cần sử dụng • Sinh hình ảnh trung gian khu thực nội suy từ khung ảnh nguồn khung ảnh đích Các hàm sử dụng tuyến tính yêu cầu tham số phương pháp nội suy Với hầu hết hàm, phương pháp mặc định sử dụng nội suy pixel gần Phương pháp tạo kết chấp nhận cho hầu hết ảnh phương pháp thích hợp với ảnh số Với ảnh cường độ hay RGB thường kiểu song tuyến tính song khối phương pháp cho kết tốt Với ảnh RGB, nội suy thường thực mặt phẳng R, G, B riêng biệt Với ảnh nhị phân, nội suy gây ảnh hưởng mà ta nhận thấy Nếu sử dụng nội suy song tuyến tính nội suy song khối, giá trị tính toán cho pixel ảnh không hoàn toàn Ảnh hưởng ảnh kết phụ thuộc vào lớp ảnh vào Nói chung với loại ảnh tô màu lấp lỗ hổng, phóng to hay thu nhỏ, để khắc phục khiếm khuyết ảnh sử dụng đến nội suy Việc giảm kích thước (hình học) ảnh gây ảnh hưởng định lên ảnh, chẳng hạn tượng xuất cưa biên ảnh Điều thông tin bị ta giảm kích thước ảnh Răng cưa xuất gợn sóng ảnh sau Vì vậy, phần mềm chỉnh sủa ảnh sử dụng nhiều phương pháp nội suy Hình ảnh mịn màng, không bị vỡ hạt phóng to tùy thuộc vào thuật toán sử dụng nội suy Điều quan trọng giải thuật nội suy không thêm thông tin cho hình ảnh, thêm vào điểm ảnh làm tăng dung lượng tập tin Tóm lại, nội suy trình sử dụng ước lương giá trị ảnh vị trí pixel Chẳng hạn ta thay đổi kích thước ảnh, chứa nhiều pixel ảnh gốc, ta sử dụng nội suy để tính giá trị cho pixel thêm vào Có thể hiểu nôm na nội suy phóng đại hình ảnh lên thuật toán tự có máy Hầu hết máy ảnh kỹ thuật số có số điểm ảnh tính tới hàng triệu Các máy ảnh hệ trước có số điểm ảnh khoảng 1.3 – megapixel máy ảnh thường đạt 3megapixel Để có ảnh lớn hơn, chẳng hạn 20x25 cm, nên sử dụng loại máy ảnh lớn triệu điểm ảnh Hiện nhà sản xuất nối tiếng tung dòng máy ảnh có độ phân giải tương đương với chất lượng máy ảnh chụp film (trên 13 megapixel) Cũng giống máy ảnh số, số máy nghe nhạc sử dụng thuật toán nội suy để bổ sung điểm ảnh vào độ phân giải quang học Các thuật toán nội suy tính toán để thêm điểm ảnh thích hợp vào hai điểm ảnh kề So với độ phân giải quang học, điểm ảnh nội suy làm tăng độ phân giải thực tế ảnh Tiến trình thêm vào pixel ảnh cách tính toán pixel có sẵn bao quanh pixel thêm vào để xác định màu sắc tương ứng cho pixel Việc nội suy buộc phải dùng thuật toán gia tăng lượng pixel để chèn vào pixel có hình để thay đổi kích thước tổng thể hình Khi biến đổi ảnh người ta dùng đến phương pháp nội suy, giải thuật để chèn điểm ảnh hay thêm điểm ảnh vào hình ảnh Việc dùng phương pháp nội suy làm cho kích thước tổng thể hình ảnh tăng lên hay làm tăng độ phân giải thực tế ảnhbáo cáo phần mềm, sử dụng phương pháp nội suy song tuyến tính (Bilinear Interpolation) Thực nội suy chương trình: if (isBilinear) { x2 = (x1 == srcW - 1) ? x1 : x1 + 1; y2 = (y1 == srcH - 1) ? y1 : y1 + 1; dx1 = ptInPlane.X - (float)x1; if (dx1 < 0) dx1 = 0; dx1 = 1f - dx1; dx2 = 1f - dx1; dy1 = ptInPlane.Y - (float)y1; if (dy1 < 0) dy1 = 0; dy1 = 1f - dy1; dy2 = 1f - dy1; dx1y1 dx1y2 dx2y1 dx2y2 y1] * dx2y1 + srcCB.A[x1, y2] * y1] * dx2y1 + srcCB.B[x1, y2] * y1] * dx2y1 + srcCB.G[x1, y2] * y1] * dx2y1 + srcCB.R[x1, y2] * = = = = dx1 dx1 dx2 dx2 * * * * dy1; dy2; dy1; dy2; nbyte = srcCB.A[x1, y1] * dx1y1 + dx1y2 + srcCB.A[x2, y2] * dx2y2; destCB.A[x, y] = (byte)nbyte; nbyte = srcCB.B[x1, y1] * dx1y1 + dx1y2 + srcCB.B[x2, y2] * dx2y2; destCB.B[x, y] = (byte)nbyte; nbyte = srcCB.G[x1, y1] * dx1y1 + dx1y2 + srcCB.G[x2, y2] * dx2y2; destCB.G[x, y] = (byte)nbyte; nbyte = srcCB.R[x1, y1] * dx1y1 + dx1y2 + srcCB.R[x2, y2] * dx2y2; destCB.R[x, y] = (byte)nbyte; } else { destCB.A[x, destCB.B[x, destCB.G[x, destCB.R[x, } y] y] y] y] = = = = srcCB.A[x1, srcCB.B[x1, srcCB.G[x1, srcCB.R[x1, y1]; y1]; y1]; y1]; srcCB.A[x2, srcCB.B[x2, srcCB.G[x2, srcCB.R[x2, CHƯƠNG TRÌNH Giao diện chương trình biến đổi ảnh tùy ý: Để thực biến đổi ảnh, cần đưa ảnh từ bên vào chương trình Để làm vậy, giao diện chương trình nhấn file chọn open Sau chọn ảnh, ảnh xuất giao diện chương trình: Quan sát hình, thấy bốn điểm quan trọng có màu đỏ Từ điểm sử dụng chuột để di chuyển góc ảnh tới vị trí tạo cho ảnh hình dạng ... nội suy làm cho kích thước tổng thể hình ảnh tăng lên hay làm tăng độ phân giải thực tế ảnh Ở báo cáo phần mềm, sử dụng phương pháp nội suy song tuyến tính (Bilinear Interpolation) Thực nội suy

Ngày đăng: 28/03/2017, 20:01

Từ khóa liên quan

Mục lục

  • MỤC LỤC

  • LỜI NÓI ĐẦU

  • CHƯƠNG 1: MỘT SỐ KHÁI NIỆM

    • 1, Điểm ảnh

    • 2, Độ phân giải của ảnh

    • 3, Mức xám của ảnh

    • 4, Một số loại ảnh

    • 5, Thuộc tính của ảnh

    • 6, Nội suy

    • 7, Nội suy song tuyến

    • CHƯƠNG 2: BIẾN ĐỔI ẢNH

      • 1, Phương pháp biến đổi ảnh

      • 2, Áp dụng phương pháp biến đổi ảnh

      • CHƯƠNG 3: MỘT SỐ PHƯƠNG PHÁP NỘI SUY ẢNH

        • Ứng dụng của nội suy

        • CHƯƠNG TRÌNH

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

Tài liệu liên quan