1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic

62 13 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 62
Dung lượng 3,54 MB
File đính kèm File Code Bài Tiểu Luận Nhóm 2.rar (1 MB)

Cấu trúc

  • CHƯƠNG II: TỔNG QUAN VỀ ẢNH. 1. Các khái niệm cơ bản. 2. Ảnh tỉnh và ảnh động 2.1. Ảnh tỉnh (12)
    • 2.2. Ảnh động (14)
    • 3. Xử lý ảnh 1. Các bước cơ bản trong xử lý ảnh (15)
      • 3.2. Các vấn đề của xử lý ảnh (17)
        • 3.2.1. Thu nhận ảnh, chụp ảnh và số hóa ảnh (17)
        • 3.2.2. Phân tích ảnh và thị giác máy tính (17)
        • 3.2.2. Mã hóa,nén ảnh (0)
      • 3.3. Ứng dụng của xử lý ảnh (17)
      • 1.1. Định nghĩa (22)
      • 1.2. Ưu nhược điểm của Gif (23)
      • 1.3. Cách sử dụng ảnh Gif (24)
    • 2. Định dạng ảnh Gif. 1. Khái niệm chung (27)
      • 2.2. Định dạng ảnh Gif (28)
  • CHƯƠNG V:MÔ TẢ VÀ PHÂN TÍCH BÀI TOÁN. 1. Mô tả bài toán. 2. Phân tích nghiệp vụ bài toán. 3. Đề xuất mô hình quy trình nhiệp vụ bài toán. a. Mô hình dự kiến (41)
  • CHƯƠNG VI:CÔNG NGHỆ ÁP DỤNG. 1. Phân tích ngôn ngữ lựa chọn. a. Ngôn ngữ lập trình Python (43)
    • 1. Phân tích các tính năng tích hợp vào Gimp. 2. Thiết kế giao diện. 3. Cài đặt tích hợp các tính năng vào Gimp. a. Lập trình xây dựng các tính năng (46)
    • 4. Thử nghiệm các tính năng. 5. Đánh giá kết quả đạt được. a. Tính năng đạt yêu cầu (53)
    • II. Sử dụng ngôn ngữ lập trình C# xây dựng phần mềm chỉnh sửa ảnh Graphic (54)
      • 1. Phân tích và thiết kế hệ thống phần mềm. a. Phân tích (0)
      • 2. Thiết kế giao diện các Form của phần mềm. 3. Cài đặt hệ thống. 4. Thử nghiệm hệ thống. 5. Đánh giá kết quả thử nghiệm. a. Kết quả đạt được (47)
  • CHƯƠNG VIII:KẾT LUẬN (61)

Nội dung

Định dạng ảnh đang ngày được sử dụng phổ biến và ảnh Gif là một trong những định dạng được sử dụng nhiều trong các phần mềm và nó có điểm mạnh là sáng hơn so với định dạng ảnh khác.

TỔNG QUAN VỀ ẢNH 1 Các khái niệm cơ bản 2 Ảnh tỉnh và ảnh động 2.1 Ảnh tỉnh

Ảnh động

 Biểu diễn bởi hàm độ chói của các biến tọa độ mặt phẳng và biến thời gian I(x,y,t).

 Tần số và Độ phân giải:

 NTSC (525 dòng, 30 khung hình/giây)

 PAL (625 dòng, 25 khung hình/giây)

 SECAM (625 dòng, 25 khung hình/giây)

 HDTV (16:9, 720 dòng, 60 khung hình/giây)

 SVGA: 72 khung hình/giây, 1024x720 pixel

Xử lý ảnh 1 Các bước cơ bản trong xử lý ảnh

3.1 Các bước cơ bản trong xử lý ảnh a Phần thu nhận ảnh. Ảnh có thể nhận qua camera màu hoặc đen trắng Thường ảnh nhận qua camera là ảnh tương tự, cũng có loại caramen đã số hóa.

Camera thường sử dụng loại quét dòng để tạo ra ảnh hai chiều Chất lượng của ảnh thu nhận được phụ thuộc vào thiết bị thu hình cũng như điều kiện môi trường như ánh sáng và phong cảnh, bên cạnh đó còn cần đến quá trình tiền xử lý.

Thu nhận ảnh Tiền xử lý ảnh Phân đoạn ảnh Biểu diễn và mô tả ảnh

Nhận ảnh và nội suy

Sau khi thu nhận ảnh, có thể gặp tình trạng nhiễu và độ tương phản thấp, vì vậy cần sử dụng bộ tiền xử lý để cải thiện chất lượng hình ảnh Bộ tiền xử lý có chức năng chính là lọc nhiễu và nâng cao độ tương phản, giúp ảnh trở nên nét và rõ ràng hơn Tiếp theo, quá trình phân đoạn hay phân vùng ảnh sẽ được thực hiện để tách biệt các đối tượng trong hình.

Phân vùng ảnh là quá trình tách một ảnh đầu vào thành các vùng thành phần để phục vụ cho việc phân tích và nhận dạng Chẳng hạn, trong việc nhận dạng chữ hoặc mã vạch trên phong bì thư, cần phải chia địa chỉ và tên người thành các từ, chữ, và số riêng biệt Đây là một phần phức tạp nhất trong xử lý ảnh và dễ gây ra lỗi, ảnh hưởng đến độ chính xác Đầu ra sau khi phân đoạn sẽ chứa các điểm ảnh cùng với mã liên kết các vùng lân cận, và việc chuyển đổi dữ liệu này thành định dạng phù hợp là cần thiết cho các bước xử lý tiếp theo Việc chọn lựa các đặc tính để biểu diễn ảnh được gọi là trích chọn đặc trưng, giúp phân biệt giữa các lớp đối tượng khác nhau trong ảnh Ví dụ, trong nhận dạng ký tên trên phong bì, các đặc trưng của từng ký tự được mô tả để phân biệt chúng với nhau.

Nhận diện ảnh là quá trình xác định hình ảnh bằng cách so sánh với mẫu chuẩn đã lưu trữ Quá trình này thường sử dụng nội suy, tức là phán đoán dựa trên nhận dạng, chẳng hạn như việc chuyển đổi một loạt chữ số và nét gạch ngang trên phong bì thành mã điện thoại.

Có nhiều cách phân loại ảnh, nhưng theo lý thuyết nhận dạng, các mô hình toán học về ảnh được chia thành hai loại nhận dạng cơ bản.

- Nhận dạng theo tham số

- Nhận dạng theo cấu trúc

Hiện nay, trong lĩnh vực khoa học và công nghệ, một số phương pháp nhận dạng phổ biến bao gồm nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng văn bản (Text), nhận dạng vân tay, nhận dạng mã vạch và nhận dạng khuôn mặt.

3.2 Các vấn đề của xử lý ảnh

3.2.1 Thu nhận ảnh, chụp ảnh và số hóa ảnh

 Hệ thống chụp ảnh và tín hiệu ảnh.

 Hệ thống số hóa ảnh: Lấy mẫu, lượng tử hóa.

3.2.2 Phân tích ảnh và thị giác máy tính

 Cải thiện nâng cấp ảnh, sửa lỗi, khôi phục ảnh.

 Phân tách đặc trưng: tách biên, phân vùng ảnh.

 Biểu diễn và xử lý đặc trưng hình dạng đối tượng ảnh.

 Nhận dạng đối tượng ảnh, phân tích cảnh và hiểu cảnh.

 Các phương pháp nén và các chuẩn nén.

3.3 Ứng dụng của xử lý ảnh

 Thông tin ảnh, truyền thông ảnh

 Xử lý ảnh vệ tinh, viễn thám

 Thiên văn, nghiên cứu không gian, vũ trụ

 Người máy, tự động hóa

 Máy thông minh, thị giác máy nhân tạo

 Giám sát kiểm soát, Quân sự

CHƯƠNG III: TÌM HIỂU VỀ ĐỊNH DẠNG FILE ẢNH

Tất cả đồ họa trực tuyến đều là tệp hình ảnh, và mọi thứ in trên giấy, nhựa hay áo thun đều xuất phát từ các tệp này Các tệp hình ảnh có nhiều định dạng khác nhau, mỗi định dạng được tối ưu hóa cho mục đích sử dụng riêng Việc chọn đúng loại tệp cho công việc cụ thể sẽ giúp thiết kế của bạn trở nên hoàn hảo, trong khi định dạng sai có thể dẫn đến bản in kém chất lượng hoặc hình ảnh web không đạt yêu cầu Hầu hết các tệp hình ảnh được phân loại thành hai loại chính: tệp raster và tệp vectơ.

Hình ảnh raster được tạo thành từ các điểm ảnh màu sắc khác nhau, sắp xếp để hiển thị hình ảnh, nhưng khi phóng to, chúng sẽ trở nên mờ do không giữ được diện mạo Ngược lại, hình ảnh vector sử dụng các điểm rời rạc, đường và vùng tương ứng với các đối tượng thông qua tên hoặc mã số, cho phép giữ nguyên hình dạng bất kể kích thước nhờ vào các công thức toán học quy định cách hiển thị.

Hình 2: Hình ảnh raster và vector

Hình ảnh Raster được hình thành từ một lưới các điểm gọi là pixel, với mỗi pixel mang một màu sắc riêng Khác với ảnh vectơ, ảnh raster phụ thuộc vào độ phân giải và chỉ tồn tại ở một kích thước nhất định Khi biến đổi hình ảnh raster, việc kéo căng các pixel có thể dẫn đến tình trạng hình ảnh bị "pixelated" hoặc mờ Khi phóng to hình ảnh, phần mềm sẽ đoán dữ liệu hình ảnh bị thiếu dựa trên các pixel xung quanh, nhưng thường thì kết quả không đạt yêu cầu.

Hình ảnh Raster là lựa chọn phổ biến cho ảnh chụp, tác phẩm nghệ thuật kỹ thuật số và đồ họa web, bao gồm quảng cáo biểu ngữ, nội dung truyền thông xã hội và đồ họa email Adobe Photoshop là phần mềm chỉnh sửa hình ảnh hàng đầu, được sử dụng để tạo, thiết kế và chỉnh sửa hình ảnh raster, cũng như áp dụng hiệu ứng, bóng đổ và kết cấu cho các thiết kế hiện có.

Pixel là đơn vị nhỏ nhất trong hình ảnh raster, đóng vai trò là điểm vật lý hoặc khối màu trong bức ảnh kỹ thuật số Mỗi pixel là một mẫu của hình ảnh gốc, và số lượng pixel nhiều hơn thường mang lại độ chính xác cao hơn cho bản gốc Trong hệ thống màu sắc, màu sắc thường được đại diện bởi ba hoặc bốn thành phần cường độ, bao gồm màu đỏ, màu xanh lá cây, màu xanh dương và màu lục lam.

Hầu hết các ứng dụng đồ họa sử dụng kích thước pixel để mô tả độ phân giải hình ảnh Chẳng hạn, một hình ảnh có kích thước cụ thể sẽ thể hiện rõ nét độ phân giải của nó.

“2592 1944” sẽ chứa 2,592 pixel trên mỗi hàng ngang và 1,944 trên mỗi hàng dọc.

Hình 4: Chia khung ảnh thành các ô Pixel

Tất cả hình ảnh raster có thể được lưu ở một trong hai kiểu màu chính: CMYK và RGB

RGB (Đỏ, Xanh lá cây, Xanh dương) là hệ màu được tạo ra và lưu trữ dựa trên tỷ lệ của ba màu cơ bản: đỏ, xanh dương và xanh lá cây Hầu hết các máy tính hiện nay đều sử dụng chế độ này, với thang màu từ 0 đến 255, cho phép tạo ra tới 16,7 triệu màu sắc tự nhiên RGB cũng là chế độ mặc định cho các hình ảnh trong phần mềm Paint.

Màn hình máy tính luôn luôn hiển thị các màu sử dụng mô hình RGB Một số ưu điểm khi sử dụng màu RGB:

 Tiết kiệm dung lượng nhớ và cải thiện hiệu suất làm việc trong quá trình tách màu.

 Độc lập cao đối với thiết bị, do không gian RGB không phụ thuộc vào màn hình hoặc mực in.

CMYK (Cyan, Magenta, Yellow, Black) là hệ màu bù với RGB trong vòng tròn màu, thường được sử dụng trong ngành in ấn và xuất bản Màu CMYK đóng vai trò quan trọng trong việc tạo ra màu sắc cho in ấn ảnh Mô hình này dựa vào khả năng hấp thụ ánh sáng của mực in trên giấy, khi ánh sáng trắng chiếu vào, một phần bị hấp thụ và phần còn lại phản xạ lại mắt người Theo lý thuyết, các sắc tố tinh khiết xanh lơ (C), đỏ thẫm (M) và vàng (Y) kết hợp để hấp thụ toàn bộ ánh sáng và tạo ra màu đen Màu trắng thuần túy trong CMYK được tạo ra khi tất cả bốn thành phần đều có giá trị bằng 0 Các màu cơ bản trong mô hình này là: Xanh lơ, Đỏ tươi, Vàng và Đen.

Hình 6: Hình ảnh của màu CMYK

CHƯƠNG IV: ĐỊNH DẠNG ẢNH GIF

1 Tổng quan về ảnh Gif.

1.1 Định nghĩa. Ảnh GIF là một dạng ảnh động ngắn được CompuServe lên kế hoạch phát triển vào năm 1987 với tên tiếng anh là Graphics

Định dạng ảnh Gif 1 Khái niệm chung

2.1 Khái niệm chung. Ảnh thu được sau quá trình số hóa thường được lưu lại cho các quá trình xử lý tiếp theo hay truyền đi Trong quá trình phát triển của kỹ thuật xử lý ảnh, tồn tại nhiều định dạng ảnh khác nhau từ ảnh đen trắng (với định dạng IMG), ảnh đa cấp xám cho đến ảnh màu: (BMP, GIF, JPEG…) Tuy các định dạng này khác nhau, song chúng đều tuân theo một cấu trúc chung nhất Nhìn chung, một tệp ảnh bất kỳ thường bao gồm 3 phần:

+ Mào đầu tệp (Header) + Dữ liệu nén (Data Image) + Bảng màu (Palette Color)

Mào đầu tệp là phần quan trọng chứa thông tin về kiểu ảnh, kích thước, độ phân giải, số bit cho mỗi pixel, phương pháp mã hóa và vị trí bảng màu.

Image) Đây là phần dữ liệu của ảnh mà ta thấy được

Bảng màu không cần thiết phải có ví dụ trong ảnh đen trắng, nhưng nếu có, nó sẽ chỉ ra số lượng màu được sử dụng và cách hiển thị màu sắc trong ảnh Ngoài ra, có nhiều định dạng khác nhau, cấu hình, đặc trưng của từng định dạng và các tham số liên quan.

 Quy trình đọc một tệp ảnh

Trong quá trình xử lý ảnh, bước đầu tiên là đọc tệp ảnh và chuyển đổi nó vào bộ nhớ máy tính dưới dạng ma trận số liệu Ảnh được lưu trữ dưới dạng tệp, bao gồm nhiều byte, và để đọc chính xác, cần hiểu cấu trúc tệp ảnh Điều này bắt đầu bằng việc đọc phần đầu (Header) để thu thập thông tin chung và điều khiển, và quá trình này dừng lại khi không tìm thấy chữ ký định dạng ảnh mong muốn Dựa vào thông tin điều khiển, ta có thể xác định vị trí bảng màu và thực hiện các bước tiếp theo trong xử lý ảnh.

Sau khi đọc các khối dữ liệu ảnh vào bộ nhớ, chúng ta tiến hành nén dữ liệu ảnh dựa trên phương pháp nén được chỉ ra trong phần Header Tiếp theo, quá trình giải mã ảnh diễn ra, và cuối cùng là khâu hiển thị ảnh Dựa vào số liệu ảnh đã giải nén, cùng với vị trí và kích thước ảnh, hình ảnh sẽ được hiển thị trên màn hình với sự hỗ trợ của bảng màu.

2.2 Định dạng ảnh Gif. Định dạng ảnh GIF do hãng ComputServer Incorporated đề xuất lần đầu tiên vào năm 1990 Với định dạng GIF, những vướng mắc mà các định dạng khác gặp phải khi số màu trong ảnh tăng lên không còn nữa Khi số màu càng tăng thì ưu thế của định dạng GIF càng nổi trội. Những ưu thế này có được là do GIF tiếp cận các thuật toán nén LZW. Bản chất của kỹ thuật nén LZW là dựa vào sự lặp lại của một nhóm điểm chứ không phải loạt dài giống nhau Do vậy, dữ liệu càng lớn thì sự lặp lại càng nhiều. a Kỹ thuật nén LZW.

GIF không phải là phương pháp nén dữ liệu mà là định dạng hình ảnh đồ họa, với phiên bản gốc được gọi là GIF87a Định dạng này sử dụng thuật toán Lempel Ziv – Welch (LZW) để nén dữ liệu hình ảnh, cho phép truyền tải hình ảnh giữa các máy tính khác nhau GIF quét hình ảnh theo từng hàng và nhận diện các pixel tương quan trong cùng một hàng, sử dụng từ điển động để tối ưu hóa quá trình nén dữ liệu.

 Nó lấy số bit nhị phân trên mỗi pixel b làm tham số Cho ảnh đơn sắc b = 2 và ảnh có 256 màu, sắc độ b = 8.

 Nó sử dụng từ điển với 2 ^ (b + 1) mục nhập Tại mỗi lần điền từ điển sẽ có kích thước gấp đôi cho đến 4096 mục nhập và vẫn ở dạng tĩnh.

Hiện tại, bộ mã hóa giám sát khả năng nén dữ liệu và có thể lựa chọn loại bỏ từ điển hiện tại để bắt đầu với một từ điển mới và trống.

Tại thời điểm quyết định loại bỏ, Bộ mã hóa phát ra giá trị 2 ^ b dưới dạng mã rõ ràng, điều này là tín hiệu cho bộ giải mã để thực hiện việc loại bỏ từ điển.

Con trỏ nhận một byte từ từ điển này sang từ điển khác, với đầu ra nằm trong khối 8 byte Mỗi con trỏ có kích thước tối đa 255 byte và kết thúc bằng byte 8 số không Con trỏ lưu trữ với LSB (Bit ít quan trọng nhất) ở bên trái, trong khi khối cuối cùng chứa giá trị là 2 ^ (b + 1).

 Nén GIF không hiệu quả vì GIF là một chiều trong khi hình ảnh ở hai chiều

Vì vậy, GIF không được sử dụng bởi các trình duyệt web ngày nay

 Ví dụ: cho ảnh gif sau:

Chiều rộng: 3 pixel ; cao : 5 pixel

Ta sẽ có bảng mã giá trị hình ảnh như sau:

(hex) hệ số thập phân giá trị Nội dung

38 39 61 GIF89a Thông số ảnh mẫu

6 03 00 3 Chiều rộng màn hình logic

8 05 00 5 Chiều cao màn hình logic

A F7 GCT theo sau cho 256 màu với độ phân giải 3 × 8 bit / chính, 3 bit trừ đi 1, bit thực cao nhất có nghĩa là GCT hiện diện

C 00 0 Tỷ lệ khung hình pixel mặc định,

Bảng màu toàn cầu, màu # 0: #

Bảng màu toàn cầu, màu # 1: bit trong suốt, không được sử dụng trong hình ảnh

Bảng màu toàn cầu mở rộng đến

Bảng màu toàn cầu, màu # 255:

Phần mở rộng Kiểm soát Đồ họa (các trường nhận xét đứng trước phần này trong hầu hết các tệp)

30F 04 4 Lượng dữ liệu GCE, 4 byte

Màu nền trong suốt; đây là một trường bit, bit thấp nhất biểu thị sự minh bạch

311 00 00 Độ trễ cho hoạt ảnh trong một phần trăm giây; không được sử dụng

313 10 16 Số màu của pixel trong suốt trong

315 2C Bộ mô tả hình ảnh

00 (0, 0) Vị trí góc tây bắc của hình ảnh trong màn hình logic

00 (3, 5) Chiều rộng và chiều cao của hình ảnh tính bằng pixel

31E 00 0 Bảng màu cục bộ bit, 0 nghĩa là không có

31F 08 8 Bắt đầu hình ảnh, kích thước mã tối thiểu LZW

320 0B 11 Lượng theo dõi hình ảnh được mã hóa LZW, 11 byte

11 bytes dữ liệu hình ảnh, 320 tệp đã xem

 Sơ đồ mã hóa ảnh Gif:

Hình 7: Sơ đồ mã hóa ảnh Gif

Dữ liệu pixel hình ảnh được quét từ trên cùng bên trái và mã hóa bằng phương pháp LZW, sau đó chuyển đổi thành mã để lưu trữ trong tệp Các mã pixel thường không tương thích với kích thước 8-bit của byte, vì vậy chúng được đóng gói theo lược đồ "little-Endian" Theo đó, bit quan trọng nhất của mã đầu tiên được lưu trữ trong bit quan trọng nhất của byte đầu tiên, trong khi các bit thứ tự cao hơn của mã được lưu trong các bit thứ tự cao hơn của byte, và nếu cần, tràn sang các bit thứ tự thấp của byte tiếp theo Mỗi mã tiếp theo được lưu trữ bắt đầu từ bit quan trọng nhất chưa được sử dụng.

 Luồng byte này được lưu trữ trong tệp dưới dạng một loạt các

"khối con" Mỗi khối con có độ dài tối đa 255 byte và được bắt đầu bằng một byte cho biết số byte dữ liệu trong khối con

Chuỗi khối con được kết thúc bởi một khối con trống (một byte

0, chỉ một khối con có 0 byte dữ liệu).

 Đối với hình ảnh mẫu ở trên, ánh xạ có thể đảo ngược giữa mã 9 bit và byte được hiển thị bên dưới.

Một sự nén nhẹ là điều hiển nhiên, trong đó các màu pixel ban đầu được xác định bằng 15 byte, nhưng được thể hiện chính xác chỉ với 12 byte mã, bao gồm cả mã điều khiển.

Quá trình mã hóa tạo ra các mã 9 bit, thể hiện dưới dạng chuỗi cục bộ, tích lũy các số màu pixel từ bảng màu Hệ thống này không yêu cầu hành động xuất miễn là ánh xạ có thể đảo ngược Các mã này được trình bày dưới dạng byte nhị phân 9 bit (mã hex).

Bảng mã gồm 01 bộ, với cách xử lý đặc biệt cho hai pixel đầu tiên trước khi bảng phát triển từ kích thước ban đầu bằng cách thêm các chuỗi Sau mỗi mã đầu ra, chuỗi cục bộ được khởi tạo thành màu pixel mới nhất, không được đưa vào mã đầu ra.

Table 9-bit string > code code Action

#0 | 000h Initialize root table of 9-bit codes palette | : colors | :

Pixel Local | color Palette string |

BLACK #40 28 | 028h 1st pixel always to output

WHITE #255 FF | String found in table

28 FF | 102h Always add 1st string to table

FF | Initialize local string WHITE #255 FF FF | String not found in table

| 0FFh - output code for previous string

FF FF | 103h - add latest string to table

WHITE #255 FF FF | String found in table BLACK #40 FF FF 28 | String not found in table

| 103h - output code for previous string

FF FF 28 | 104h - add latest string to table

WHITE #255 28 FF | String found in table WHITE #255 28 FF FF | String not found in table

| 102h - output code for previous string

28 FF FF | 105h - add latest string to table

WHITE #255 FF FF | String found in table WHITE #255 FF FF FF | String not found in table

| 103h - output code for previous string

FF FF FF | 106h - add latest string to table

WHITE #255 FF FF | String found in table WHITE #255 FF FF FF | String found in table WHITE #255 FF FF FF FF | String not found in table

| 106h - output code for previous string

FF FF FF FF| 107h - add latest string to table

WHITE #255 FF FF | String found in table WHITE #255 FF FF FF | String found in table WHITE #255 FF FF FF FF | String found in table

107h - output code for last string

Bảng hiển thị ở trên được xây dựng từ các chuỗi có chiều dài tăng dần, tuy có thể hoạt động nhưng tiêu tốn bộ nhớ không thể đoán trước Để tiết kiệm bộ nhớ, mỗi chuỗi mới chỉ cần lưu trữ một chuỗi đã có trước đó cộng thêm một ký tự, do đó chỉ cần lưu trữ hai từ tại mỗi địa chỉ: một địa chỉ hiện có và một ký tự.

TẢ VÀ PHÂN TÍCH BÀI TOÁN 1 Mô tả bài toán 2 Phân tích nghiệp vụ bài toán 3 Đề xuất mô hình quy trình nhiệp vụ bài toán a Mô hình dự kiến

Mỗi ngày, hàng triệu dữ liệu hình ảnh kỹ thuật số được truyền tải trên Internet, với các định dạng phổ biến như JPG, JPEG, GIF, PNG và SVG.

GIF là định dạng file hình ảnh 8 bit, giới hạn trong bảng màu tối đa 256 màu Mỗi ảnh GIF chứa một "hộp bút màu" cố định, không cho phép kết hợp các màu để tạo ra màu mới.

Mặc dù con số 256 màu trong ảnh GIF có vẻ nhiều, nhưng thực tế, các bức ảnh phức tạp thường chứa hàng nghìn tông màu, dẫn đến việc mất mát màu sắc trong quá trình chuyển đổi Điều này là nguyên nhân chính khiến GIF không phù hợp cho việc hiển thị ảnh màu Để khắc phục những hạn chế của định dạng GIF, chúng tôi đã phát triển một phần mềm chỉnh sửa ảnh nhằm giải quyết các vấn đề này.

2 Phân tích nghiệp vụ bài toán.

Các tính năng Gif đã hổ trợ:

Mặc dù không phải là lựa chọn tối ưu cho ảnh màu, nhưng định dạng GIF với giới hạn 256 màu giúp giảm dung lượng file, rất phù hợp cho các tình huống có tốc độ Internet chậm GIF cũng giữ được độ trong suốt của ảnh, một tính năng mà PNG và SVG cũng hỗ trợ.

GIF hỗ trợ ảnh động và ảnh trong suốt với giới hạn 256 màu, đồng thời là định dạng nén không mất dữ liệu Điều này giúp giữ cho các đường thẳng trong typography và hình dạng hình học được sắc nét, mặc dù các đối tượng này thường phù hợp hơn với file đồ họa vector như SVG hoặc định dạng AI của Adobe Illustrator.

Chúng tôi đang phát triển một phần mềm chỉnh sửa ảnh mới, tích hợp các tính năng hỗ trợ và không hỗ trợ Gif, nhằm tạo ra một ứng dụng hoàn chỉnh với đầy đủ các tính năng cơ bản để chỉnh sửa và lưu trữ ảnh Gif cũng như các loại ảnh khác.

3 Đề xuất mô hình,quy trình nghiệp vụ bài toán. a Mô hình dự kiến:

 Các quang học ảnh được sử dụng.

 Quét ảnh toàn diện qua phần mềm. b Quy trình nghiệp vụ:

Hình 9: Quy trình nghiệp vụ.

 Phân tích: phân tích bài toán đặt ra, xây dựng bản đặc tả chức năng của phần mềm cũng như các tính năng tích hợp vào Gimp.

 Thiết kế Giao Diện: Giao diện thiết kế ra đảm bảo được các yếu tố

- Dể dàng cho lập trình.

Lập trình là quá trình sử dụng ngôn ngữ lập trình phù hợp để giải quyết các bài toán cụ thể, nhằm phát triển phần mềm đáp ứng nhu cầu thiết yếu của từng người dùng.

 Kiểm tra,Chạy thử: Kiểm tra lỗi phát sinh và chĩnh sửa.

 Cài đặt và đóng gói: Xuất file tải phần mềm và đóng gói Source Code.

NGHỆ ÁP DỤNG 1 Phân tích ngôn ngữ lựa chọn a Ngôn ngữ lập trình Python

Phân tích các tính năng tích hợp vào Gimp 2 Thiết kế giao diện 3 Cài đặt tích hợp các tính năng vào Gimp a Lập trình xây dựng các tính năng

GIMP, hay GNU Image Manipulation Program, là phần mềm chỉnh sửa ảnh miễn phí với khả năng phục chế và xử lý bố cục ảnh Công cụ này hỗ trợ nhiều định dạng ảnh mà các phần mềm khác không có, giúp người dùng dễ dàng chỉnh sửa hình ảnh Ngoài ra, người dùng có thể tích hợp các tính năng mới vào GIMP thông qua các ngôn ngữ lập trình, đáp ứng nhu cầu chỉnh sửa ảnh cá nhân.

Phần này chúng em có sử dụng ngôn ngữ lập trình Python để tích hợp một số tính năng xử lý ảnh vào Gimp thông qua thư viện gimpfu.

 Mục đích : xây dựng các tính năng tích hợp vào Gimp để xử lý ảnh Gif.

Mục tiêu của nghiên cứu này là phát triển và cải thiện các tính năng trong Gimp bằng ngôn ngữ lập trình Python, nhằm nâng cao khả năng thu phóng và làm rõ nét hình ảnh.

 Yêu cầu chức năng: các chức năng mới tạo phải hoạt động tốt, xử lý được dữ liệu cần thiết.

Tính năng chọn mẫu dữ liệu nhỏ từ một bức ảnh (python_fu_heal_selection) cho phép người dùng lựa chọn chiều rộng lấy mẫu trước khi thực hiện các thao tác xử lý ảnh thông qua các nút thực thi tích hợp.

Hình 10: Giao diện chọn mẫu dữ liệu.

Tính năng lập bản đồ kết cấu hình ảnh (python_fu_map_style) cho phép phân bổ hình ảnh thành các layer nhỏ, hiển thị dưới dạng bản đồ điểm ảnh.

Hình 11: Thiết lập bản đồ kết cấu hình ảnh.

 Tính năng phóng to thu nhỏ hình ảnh(python_fu_uncrop): Tính năng thực hiện phóng to thu nhỏ hình ảnh theo kích cỡ lựa chọn.

Hình 12: Thu phóng hình ảnh.

 Phân bổ kết cấu,kết xuất hình ảnh(python_fu_render_texture):tính năng cho phép người dùng phân chia lại kết cấu,tỷ lệ hình ảnh.

Hình 13: Phân bổ kết cấu hình ảnh.

 Thay đổi màu sắc hình người dùng lựa chọn các hình ảnh yêu thích để tích hợp vào bức ảnh hoặc làm mới bức ảnh.

Hình 14: Lựa chọn màu sắc mới cho hình ảnh.

Phóng to tái tổng hợp hình ảnh là tính năng cho phép người dùng lựa chọn tỷ lệ phóng to để tạo ra một mẫu hình ảnh hoàn chỉnh hơn Với python_fu_enlarge_resynthesized, người dùng có thể dễ dàng điều chỉnh quy mô tỷ lệ và tái tổng hợp hình ảnh theo mong muốn.

Hình 15: Tái tổng hợp và làm sắc nét hình ảnh.

 Tính năng làm rõ hình ảnh(python_fu_sharpen_resynthesized):người dùng chọn tỷ lệ phù hợp để làm rõ hình ảnh.

Hình 16: Làm rõ hình ảnh.

3 Cài đặt , tích hợp các tính năng vào Gimp. a Lập trình xây dựng các tính năng. Đầu tiên khai báo thư viện gimpfu thực hiện cài đặt dữ liệu trong Gimp.

Xây dựng các tính năng riêng,mỗi file code tương ứng với một tính năng tích hợp vào Gimp.

Cuối cùng tích hợp các tính năng trên menu của Gimp.

 Tính năng chọn mẫu dữ liệu nhỏ sẽ được tích hợp trong

Các tính năng sẽ được tích hợp vào từng mục của menu Gimp để đảm bảo tính tương thích với các chức năng có sẵn Để cài đặt các tính năng trên Gimp, đầu tiên mở Gimp, sau đó vào thanh menu chọn Edit → Preferences → Folders → Plug-ins và sao chép địa chỉ cần thiết.

C:\Users\Microsoft Windows\AppData\Roaming\GIMP\2.10\plug-ins

(địa chỉ lưu trữ plug-ins)

Hình 17: Lấy địa chỉ Plug-ins

Sử dụng địa chỉ vừa mới copy dán vào ổ để tìm nơi lưu trữ sau đó copy tất cả các file code dán vào thư mục plug-ins.

Hình 18: Cài đặt code vào trong Plug-ins.

Tới đây tắt Gimp rồi mở lại để khởi động và nó sẽ tự động tích hợp các tính năng vào Gimp.

Thử nghiệm các tính năng 5 Đánh giá kết quả đạt được a Tính năng đạt yêu cầu

Phần thử nghiệm tính năng diễn ra khá đúng kế hoạch không phát sinh lỗi quá nghiêm trọng.

Tính năng Kết quả đạt được

Chọn mẫu dữ liệu nhỏ từ ảnh

Thu được kết quả cần thiết

Lập bản đồ kết cấu hình ảnh

Thu được các mẫu nhỏ phục vụ cho việc phân tích

Thu phóng hình ảnh Có thể thu phóng hình ảnh tùy ý

Phân bổ kết cấu,kết xuất hình ảnh

Thu được các mẫu nhỏ từ ảnh có kết cấu mới

Phóng to tái tổng hợp hình ảnh

Các hình ảnh sau khi được phóng to và tái tổng hợp đã rõ nét hơn và tích hợp thêm nhìu điểm ảnh mới hơn với ảnh cũ.

Làm rõ hình ảnh Hình ảnh mới đã rõ nét hơn với ảnh cũ

5 Đánh giá kết quả đạt được. a Tính năng đạt yêu cầu.

Phần lớn các tính năng được tích hợp đã đạt được yêu cầu cần thiết và mục tiêu ban đầu đặt ra b Điểm chưa hoàn thiện.

Tốc độ xử lý của các tính năng quá chậm và chưa hiển thị được lên màn hình Gimp khi đang xử lý ảnh.

Sử dụng ngôn ngữ lập trình C# xây dựng phần mềm chỉnh sửa ảnh Graphic

1 Phân tích và thiết kê hệ thống phần mềm. a Phân tích.

Hệ thống phần mềm ra đời phải đáp ứng phải được đầy đủ các chức năng cơ bản của một phần mềm xử lý ảnh.

Giao diện thân thiện với người dùng và dễ sử dụng. b Thiết kế hệ thống.

Hệ thống kiến trúc phần mềm chỉnh sửa ảnh Graphic được thiết kế với đầy đủ các tính năng trên thanh công cụ menu Bên trong mỗi tính năng, các chức năng con được phân bổ và sắp xếp một cách gọn gàng, giúp người dùng dễ dàng sử dụng để phục vụ cho mục đích xử lý ảnh.

Hình 19: Kiến trúc hệ thống phần mềm.

 Bên trong chức năng Displacement Filters được phân bổ thành các chức năng con với sơ đồ phân cấp chức năng như sau.

Hình 20: Kiến trúc bên trong hệ thống phần mềm.

2 Thiết kế giao diện các Form của phần mềm.

Giao diện chính cung cấp cho người dùng một cái nhìn tổng quát về tất cả các chức năng có sẵn, cho phép họ dễ dàng lựa chọn Bên trong mỗi chức năng chính, các chức năng con được phân chia rõ ràng, tạo thuận lợi cho việc sử dụng.

Hình 21: Giao diện Form chính của phần mềm.

Giao diện chỉnh sửa độ sáng ảnh cho phép người dùng nhập tham số để điều chỉnh độ sáng theo tỷ lệ phần trăm so với bức ảnh gốc.

Giao diện chỉnh sửa độ co giãn của ảnh cho phép người dùng nhập các giá trị theo kiểu ma trận số học, giúp mã hóa ảnh thành định dạng khác một cách dễ dàng và hiệu quả.

Hình 23: Giao diện Form giải mã và mã hóa hình ảnh.

Giao diện chỉnh sửa màu sắc của ảnh cho phép người dùng dễ dàng điều chỉnh màu sắc bằng cách sử dụng các dải màu từ 0 đến 255, giúp tạo ra những bức ảnh phù hợp với nhu cầu và sở thích cá nhân.

Hình 24: Giao diện Form lựa chọn màu sắc cho hình ảnh.

 Ngoài ra, phần mềm còn tích hợp khá nhiều tính năng nhưng thông qua form xử lý mà thực hiện qua các nút lệnh như: zoom ảnh, xoay ảnh,….

3 Cài đặt hệ thống. Để cài đặt được phần mềm truy cập vào đường dẫn: https://www.mediafire.com/file/04o4xcov4clay3a/File_Code_Bai_Tie u_Luan_Nhom_2.rar/file

Tải và cài đặt trên máy.

Tính năng Kết quả thu được

Tải ảnh lên Tải được các định dạng ảnh khác nhau

Chỉnh sửa màu Thay đổi được các màu tùy thích

Tăng độ sáng Thay đổi thành công độ sáng hình ảnh

5 Đánh giá kết quả thử nghiệm. a Kết quả đạt được.

- Phần mềm hoạt động rất tốt, tất cả các tính năng hoặt động thành công.

- Các tính năng dể sử dụng phù hợp với những người dùng bình thường. b Hạn chế.

- Giao diện phần mềm chưa thực sự đẹp mắt.

- Thiếu một số tính năng quan trọng, chuyên nghiệp.

LUẬN

Chúng em đã mở rộng hiểu biết về ảnh, các định dạng file ảnh, đặc biệt là định dạng GIF, và khám phá thêm về phần mềm GIMP thông qua đề tài nghiên cứu này.

 Nâng cao khả năng làm việc nhóm.

 Phần mềm sử lý ảnh Graphic ra đời thực hiện được đầy đủ chức năng xử lý ảnh gif nói riêng và các loại ảnh cơ bản

Do thời gian hạn chế, nhóm chúng em vẫn còn nhiều sai sót trong quá trình xây dựng ứng dụng Em rất mong nhận được sự ủng hộ và giúp đỡ từ thầy giáo để bài báo cáo của chúng em được hoàn thiện hơn, có nhiều cải tiến đáng kể và ứng dụng tốt hơn vào thực tiễn.

 Tốc độ xử lý ảnh của các tính năng tích hợp vào Gimp cũng như phần mềm sử lý ảnh Graphic chưa được nhanh.

3 Hướng phát triển trong tương lai.

 Xây dựng thêm nhiều tính năng hữu ích để chỉnh sửa và lưu trữ ảnh.

 Thiết kế giao diện phần mềm đẹp mắt hơn.

 Phát triển phần mềm trở thành một phần mềm chuyên nghiệp ,phục vụ đầy đủ tính năng sửa chữa,lưu trữ và nén ảnh.

Ngày đăng: 01/12/2021, 10:38

HÌNH ẢNH LIÊN QUAN

xuống khổng lồ hoặc thiếu hình ảnh trong email. Hầu hết các tệp hình ảnh đều phù hợp với một trong hai danh mục chung : tệp raster và tệp vectơ. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
xu ống khổng lồ hoặc thiếu hình ảnh trong email. Hầu hết các tệp hình ảnh đều phù hợp với một trong hai danh mục chung : tệp raster và tệp vectơ (Trang 19)
Hình ảnh Raster thường được sử dụng cho ảnh chụp, tác phẩm nghệ thuật kỹ thuật số và đồ họa web (chẳng hạn như quảng cáo biểu ngữ , nội  dung truyền thông xã hội và đồ họa email) - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
nh ảnh Raster thường được sử dụng cho ảnh chụp, tác phẩm nghệ thuật kỹ thuật số và đồ họa web (chẳng hạn như quảng cáo biểu ngữ , nội dung truyền thông xã hội và đồ họa email) (Trang 20)
Hình 4: Chia khung ảnh thành cá cô Pixel - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 4 Chia khung ảnh thành cá cô Pixel (Trang 21)
Tất cả hình ảnh raster có thể được lưu ở một trong hai kiểu màu chính: CMYK và RGB.  - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
t cả hình ảnh raster có thể được lưu ở một trong hai kiểu màu chính: CMYK và RGB. (Trang 21)
Những hình ảnh GIF sử dụng bitmap (một loại định dạng tệp tin) với những ảnh dùng ít hơn 256 màu cho mỗi khung hình - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
h ững hình ảnh GIF sử dụng bitmap (một loại định dạng tệp tin) với những ảnh dùng ít hơn 256 màu cho mỗi khung hình (Trang 23)
 Nén GIF không hiệu quả vì GIF là một chiều trong khi hình ản hở hai chiều. Vì vậy, GIF không được sử dụng bởi các trình duyệt web ngày nay - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
n GIF không hiệu quả vì GIF là một chiều trong khi hình ản hở hai chiều. Vì vậy, GIF không được sử dụng bởi các trình duyệt web ngày nay (Trang 29)
C 000 Tỷ lệ khung hình pixel mặc định, 0: 0 - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
000 Tỷ lệ khung hình pixel mặc định, 0: 0 (Trang 30)
từ bảng màu, không có - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
t ừ bảng màu, không có (Trang 33)
bộ trong bảng mã. Có cách xử lý đặc biệt đối với hai pixel đầu tiên đến trước khi bảng phát triển từ kích thước ban đầu bằng cách bổ sung các chuỗi - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
b ộ trong bảng mã. Có cách xử lý đặc biệt đối với hai pixel đầu tiên đến trước khi bảng phát triển từ kích thước ban đầu bằng cách bổ sung các chuỗi (Trang 34)
 Để rõ ràng, bảng được hiển thị ở trên được xây dựng bằng các chuỗi có chiều dài tăng dần - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
r õ ràng, bảng được hiển thị ở trên được xây dựng bằng các chuỗi có chiều dài tăng dần (Trang 35)
Hình 8: Sơ đồ giải mã ảnh GIF - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 8 Sơ đồ giải mã ảnh GIF (Trang 36)
4,5 Pixel cuối ảnh bắt đầu tính từ đỉnh trên hình hiển thị. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
4 5 Pixel cuối ảnh bắt đầu tính từ đỉnh trên hình hiển thị (Trang 40)
Căn trái ảnh 2,3 Pixel bắt đầu ảnh tính từ trái hình hiển thị Căn   đỉnh - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
n trái ảnh 2,3 Pixel bắt đầu ảnh tính từ trái hình hiển thị Căn đỉnh (Trang 40)
Hình 9: Quy trình nghiệp vụ. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 9 Quy trình nghiệp vụ (Trang 43)
1. Phân tích ngôn ngữ lựa chọn. a. Ngôn ngữ lập trình Python. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
1. Phân tích ngôn ngữ lựa chọn. a. Ngôn ngữ lập trình Python (Trang 43)
 Tính năng lập bản đồ kết cấu hình ảnh(python_fu_map_style): tính năng thực hiện phân bổ hình ảnh thành các layer nhỏ hiển  thị như bản đồ điểm ảnh. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
nh năng lập bản đồ kết cấu hình ảnh(python_fu_map_style): tính năng thực hiện phân bổ hình ảnh thành các layer nhỏ hiển thị như bản đồ điểm ảnh (Trang 48)
Hình 10: Giao diện chọn mẫu dữ liệu. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 10 Giao diện chọn mẫu dữ liệu (Trang 48)
 Tính năng phóng to thu nhỏ hình ảnh(python_fu_uncrop): Tính năng thực hiện phóng to thu nhỏ hình ảnh theo kích cỡ lựa chọn. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
nh năng phóng to thu nhỏ hình ảnh(python_fu_uncrop): Tính năng thực hiện phóng to thu nhỏ hình ảnh theo kích cỡ lựa chọn (Trang 49)
Hình 16: Làm rõ hình ảnh. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 16 Làm rõ hình ảnh (Trang 51)
Hình 17: Lấy địa chỉ Plug-ins. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 17 Lấy địa chỉ Plug-ins (Trang 52)
Hình 18: Cài đặt code vào trong Plug-ins. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 18 Cài đặt code vào trong Plug-ins (Trang 53)
Lập bản đồ kết cấu hình ảnh - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
p bản đồ kết cấu hình ảnh (Trang 53)
Hình 19: Kiến trúc hệ thống phần mềm. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 19 Kiến trúc hệ thống phần mềm (Trang 55)
Hình 20: Kiến trúc bên trong hệ thống phần mềm. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 20 Kiến trúc bên trong hệ thống phần mềm (Trang 56)
Hình 21: Giao diện Form chính của phần mềm. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 21 Giao diện Form chính của phần mềm (Trang 57)
Hình 23: Giao diện Form giải mã và mã hóa hình ảnh. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 23 Giao diện Form giải mã và mã hóa hình ảnh (Trang 58)
Hình 24: Giao diện Form lựa chọn màu sắc cho hình ảnh. - Tìm hiểu ảnh Gif và xây dựng phần mềm xử lý ảnh Graphic
Hình 24 Giao diện Form lựa chọn màu sắc cho hình ảnh (Trang 59)
w