Giải pháp phân đoạn ảnh bằng công nghệ CNN

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu ứng dụng công nghệ mạng nơron tế bào vào bài toán phân đoạn ảnh (Trang 47)

2.4.1. Xử lý ảnh dùng PDE

Từ khoảng những năm cuối của thế kỷ 20 việc ứng dụng PDE cho xử lý ảnh đã được khởi động nghiên cứu. Xử lý ảnh bằng PDE đã tỏ rõ là một phương pháp xử lý ảnh hiệu quả khi thực hiện các tác vụ làm trơn, giảm nhiễu, tìm biên, phân vùng ảnh, phục hồi cấu trúc ảnh, nén ảnh.

Các thuật toán xử lý ảnh dùng PDE có nhiều đặc tính tốt do:

- Tính chất cục bộ tự nhiên của PDE phù hợp với rất nhiều các đặc điểm cục bộ của ảnh. Do vậy biểu diễn quá trình biến đổi ảnh qua PDE là rất thích hợp.

- Ðã sẵn có nền tảng lý thuyết toán học về PDE chặt chẽ và phong phú bao gồm sự hội tụ, tính ổn định, lời giải duy nhất…

- Ðã có nhiều dạng sơ đồ rời rạc hoá cho thực hiện các thuật toán PDE. - Thuật toán được mô tả ngắn gọn không dài dòng phức tạp và dễ hiểu. - Dễ dàng khái quát hoá mở rộng chiều một cách đơn giản bằng cách sử dụng các toán tử Laplace, divergence và gradient.

- Có thể quan sát được quá trình biến đổi thời gian thực của ảnh nếu sử dụng công cụ CNN.

Các PDE được sử dụng để xử lý ảnh thường ở hai lớp: PDE khuếch tán tuyến tính (hệ số khuếch tán hằng số, đẳng hướng) và PDE khuếch tán phi tuyến (hệ số khuếch tán phi tuyến và không đẳng hướng).

Cũng như với tất cả các tác vụ xử lý ảnh khác trên máy tính hệ lệnh tuần tự xử lý ảnh dùng PDE gặp phải một vấn đề đó là tổng số lượng các phép tính toán, xử lý rất lớn, điều này làm cho mong muốn xử lý ảnh thời gian thực trong đa số các trường hợp yêu cầu là không thực hiện được. Tuy nhiên với các mô hình CNN 1 lớp, nhiều lớp được thiết kế với các bộ mẫu thích hợp việc giải các PDE này theo phương pháp sai phân sẽ chỉ tốn những khoảng thời gian vài phần triệu giây, không phụ thuộc vào kích thước lưới sai phân, cho phép thực hiện được các xử lý ảnh dùng PDE với thời gian thực.

Tuy nhiên các kết quả nghiên cứu về xử lý ảnh dùng PDE trên CNN mới chỉ rất ít ỏi; đây là một thực tế khách quan bởi lực lượng nghiên cứu về CNN chưa phải là rất đông đảo trong khi các công việc và hướng nghiên cứu thì rất rộng:

- Đã có các mô hình CNN tìm biên dùng PDE. Đã có các nghiên cứu về giảm nhiễu dùng PDE trên CNN với các phương trình tuyến tính các hệ số, thành phần của PDE là số thực.

- Tuy nhiên các mô hình CNN thực hiện các PDE khuếch tán sử dụng cho xử lý ảnh mới được quan tâm đến các mô hình CNN một lớp đơn. Các thành phần và hệ số của các CNN thực hiện PDE này chỉ là số thực. Các mô hình CNN nhiều lớp thực hiện PDE với các thành phần phi tuyến và phức áp dụng cho xử lý ảnh chưa được quan tâm nghiên cứu.

- Nhiều công việc xử lý ảnh cơ bản hữu dụng như các bộ lọc shock, lọc nhiễu đốm chưa được quan tâm xử lý trên CNN

- Cuối cùng là các mô hình, các thuật toán xử lý ảnh trên CNN (cũng như các mô hình CNN cho các nhiệm vụ khác như giải PDE, quan sát đa mục tiêu, …) cần phải được nghiên cứu tích hợp tạo ra bởi phần cứng để có các sản phẩm nổi trội, sắc bén.

2.4.2.1. Tính ƣu việt và ý nghĩa - Tính ƣu việt

Xử lý thông tin ảnh là một công việc khó khăn do tính bất định, đa dạng của ảnh, do lượng thông tin cần xử lý vô cùng lớn. Xử lý ảnh dùng CNN đã giải quyết được sự xung đột về lượng thông tin đồ sộ cần xử lý và tốc độ thực hiện. Vấn đề xử lý ảnh thời gian thực, xử lý ảnh trong những khoảng thời gian vài phần nghìn giây, xử lý ảnh từ nhiều nguồn thu khác nhau đã trở thành hiện thực. Do tính chất động học liên tục về thời gian nên luồng ảnh được xử lý (thực chất là luồng tín hiệu điện), trạng thái biến đổi của ảnh có thể quan sát được liên tục, đây là thuộc tính không thể có được khi xử lý trên máy tính tuần tự.

- Ý nghĩa khoa học:

Việc ứng dụng CNN cho các yêu cầu tính toán và xử lý nhanh đã cung cấp cho xã hội con người một công cụ mạnh, sắc bén có tiềm năng lớn trong các hoạt động khoa học, công nghệ, quân sự và dân dụng. Việc nghiên cứu về CNN giúp cho việc thúc đẩy nghiên cứu tiếp cận các hoạt động sống của động vật: các cơ chế thu nhận và xử lý âm thanh, hình ảnh, áp suất, ... của tai, mắt, da,... của động vật có thể giống như mô hình các hệ thu và xử lý tín hiệu CNN.

- Ý nghĩa thực tiễn

Một điều rất lý thú và cũng là đặc điểm nổi bật của mạng nơron tế bào CNN là do tính đơn giản về kết cấu và chúng có giới hạn động lực học xác định nên việc thực hiện trên phần cứng tương đối đơn giản hơn so với việc cứng hoá các chip xử lý tuần tự. Các hệ thống xử lý ảnh tốc độ cao dùng CNN có thể được cứng hoá trên các mảng FPGA, tích hợp trong các hệ nhúng sẽ là những sản phẩm phổ biến trong thời kỳ hậu PC hiện nay. Ở mức cao hơn nữa người ta tìm cách cứng hoá các thuật toán CNN. Khi đó các thuật toán sẽ

được thực hiện với thời gian ở gần mức quá độ của mạch điện (thường khoảng vài micro giây) có nghĩa là các thuật toán xử lý phức tạp sẽ chạy ngay trực tiếp trên các mạch điện được thiết kế theo yêu cầu của nhiệm vụ cụ thể. Ðiều này là hoàn toàn cho phép do công nghệ FPGA đang càng ngày càng phát triển và giá thành càng hạ. Ðây cũng là một hướng nghiên cứu mở vô hạn cho những người nghiên cứu về xử lý và tính toán thời gian thực dùng CNN.

2.4.2.2. Tình hình nghiên cứu về xử lý ảnh dùng CNN trong nuớc

Từ đầu năm 2005 thông qua chương trình hợp tác khoa học công nghệ quốc tế giữa Việt Nam và Hung-ga-ry công nghệ CNN tại Việt Nam đã được bắt đầu nghiên cứu tại Viện Công nghệ thông tin - Viện Khoa học và Công nghệ Việt Nam. Thông qua đề tài hợp tác các nhà nghiên cứu Việt Nam đã làm chủ được những thành tựu mới nhất về CNN cả về lý thuyết và công nghệ. Từ việc nắm bắt này nhiều nghiên cứu về CNN đã được tiến hành và thu được kết quả tốt. Các thực nghiệm về nhận dạng thuốc viên tốc độ cao trong khi sản xuất, nhận dạng sự phát sinh tia lửa điện bugi, phát hiện mất ốc trên đường ray, phát hiện sự xuất hiện các trạng thái thay đổi đột ngột trong thí nghiệm nổ bóng, nhận dạng vân tay,... dùng CNN đã được thực hiện thành công.

Mặc dù mới tham gia vào lĩnh vực này nhưng nhiều đóng góp khoa học nghiên cứu về CNN đã được công nhận trong các hội thảo khoa học quốc tế như thuật toán khôi phục ảnh đối xứng thời gian thực, mô hình CNN 3 lớp giải PDE cho bài toán ô nhiễm, giải PDE bài toán dòng chảy, mô hình CNN 2 lớp phức ứng dụng trong xử lý ảnh, các thuật toán lai giảm nhiễu, phân đoạn ảnh các sơ đồ cứng hoá thuật toán lai, nghiên cứu ứng dụng camera CNN nhận dạng hình ảnh trên robot tự động sử dụng trong công nghiệp...Hiện nay việc nghiên cứu về ứng dụng CNN vẫn được tiếp tục phát triển thông qua các

đề tài hợp tác quốc tế như Việt Nam-Hung-ga-ry. (chế tạo chip CNN giải PDE dùng công nghệ FPGA),Việt Nam-Hàn Quốc 2010- 2011(sử dụng camera CNN trong điều khiển xe bốc xếp hàng tự động tại kho cảng) mà đơn vị thực hiện trực tiếp của Việt Nam là Viện Công nghệ thông tin-Viện Khoa học và Công nghệ Việt Nam.[5].

2.4.2.3. Kết quả xử lý ảnh dùng CNN

Mạng nơron tế bào CNN cho phép xử lý các mảng tín hiệu tốc độ cao bởi hai yếu tố cơ bản và khó có thể tách rời nhau:

- Một bộ xử lý tế bào trong mảng CNN là một mạch điện phi tuyến đơn giản liên kết cục bộ với các bộ xử lý tế bào khác trong bán kính ảnh hưởng trực tiếp có tốc độ xử lý tín hiệu đầu vào là thời gian quá độ của một mạch điện (khoảng vài micro giây). Hàng chục ngàn bộ xử lý tế bào trong một chip CNN xử lý hàng chục ngàn tín hiệu đầu vào khác nhau để cho ra đồng thời ở đầu ra hàng chục ngàn tín hiệu đã được xử lý cũng chỉ cần một lệnh duy nhất là bộ trọng số liên kết giữa các bộ xử lý này.

- Các cảm biến thu mảng tín hiệu (ánh sáng, áp suất, âm thanh,...) có thể đưa trực tiếp vào đầu vào của mỗi nơron trong mạng nơron tế bào để xử lý không cần qua các bộ ADC. Như vậy đã bỏ được rất nhiều khâu biến đổi, truyền dẫn trung gian giữa tín hiệu cần xử lý và bộ xử lý.

Xử lý ảnh dùng CNN hiện nay đã thực hiện được tất cả các công việc kinh điển mà một chương trình xử lý ảnh thường phải thực hiện:

- Tiền xử lý: Loại bỏ các đối tượng nhiễu, tăng cường độ tương phản, tăng cường các thông tin cần quan tâm.

- Trích chọn đặc tính. - Rút ra các quyết định.

Như đã nói ở phần trên xử lý ảnh dùng PDE là một hướng mới trong xử lý ảnh. Ðã có rất nhiều nghiên cứu về xử lý ảnh dùng PDE trên máy tính hệ

lệnh tuần tự, nhưng các kết quả nghiên cứu về xử lý ảnh dùng PDE trên CNN mới chỉ rất ít ỏi; đây là một thực tế khách quan bởi lực luợng nghiên cứu về CNN chưa phải là rất đông đảo trong khi các công việc và hướng nghiên cứu thì rất rộng:

- Ðã có các mô hình CNN tìm biên dùng PDE. Ðã có các nghiên cứu về giảm nhiễu dùng PDE trên CNN với các phương trình tuyến tính các hệ số, thành phần của PDE là số thực.

- Tuy nhiên các mô hình CNN thực hiện các PDE khuếch tán sử dụng cho xử lý ảnh mới được quan tâm đến là các mô hình CNN 1 lớp đơn. Các thành phần và hệ số của các CNN thực hiện PDE này chỉ là số thực. Các mô hình CNN nhiều lớp thực hiện PDE với các thành phần phi tuyến và phức áp dụng cho xử lý ảnh đã chưa được quan tâm nghiên cứu.

- Nhiều công việc xử lý ảnh cơ bản, hữu phân đoạn ảnh chưa quan tâm xử lý trên CNN.

- Cuối cùng là các mô hình, các thuật toán xử lý ảnh trên CNN (cũng như các mô hình CNN cho các nhiệm vụ khác như giải PDE, quan sát đa mục tiêu,...) cần phải được nghiên cứu tích hợp tạo ra bởi phần cứng để có các sản phẩm nổi trội, sắc bén.

- Nếu xử lý trên mạng CNN thì theo lý thuyết tốc độ phân đoạn ảnh nhanh hơn n lần so với CPU có cùng tốc độ xung nhịp (với n=NxM) .

2.4.2.4. Hạn chế và giải pháp ứng dụng CNN

- Hạn chế

Hạn chế khi sử dụng CNN là do sai số. Cũng như một số phương pháp giải gần đúng PDE, khi giải trên CNN ta có những sai số (không kể sai số do các phép do):

+ Sai số gây ra do phép làm tròn.

- Giải pháp

Với độ sai số lớn có ba phương pháp:

+ Phương pháp thứ nhất: Thêm hệ CNN thứ cấp tính cho các đạo

hàm bậc cao bổ sung vào kết quả cuối cùng, như vậy ta phải thiết kế lại mẫu dẫn đến có thể phải dùng hệ CNN đa lớp.

+ Phương pháp thứ hai: Dùng cấu trúc láng giềng r lớn hơn (r=2, 3)

với mẫu 5x5, 7x7… để tính cho thành phần đạo hàm bậc cao. Trường hợp này, có thể xây dựng hệ CNN không đồng nhất.

+ Phương pháp thứ ba: Dùng phương pháp huấn luyện qua thực

nghiệm để tìm ta mẫu tối ưu với độ chính xác chấp nhận được. Ðây là phương pháp đã được sử dụng trong một số bài toán.

2.4.3. Mẫu và vai trò của mẫu 2.4.3.1. Giới thiệu chung 2.4.3.1. Giới thiệu chung

Các máy tính vạn năng tương tự logic CNN-UM xử lý song song với hàng chục ngàn bộ xử lý đồng thời làm việc bởi một lệnh duy nhất đã được phát minh năm 1993 dựa trên nền tảng công nghệ mạng nơron tế bào CNN .Đây là một bước đột phá về chất trong lĩnh vực công cụ xử lý so với các máy tính số thực hiện hệ lệnh tuần tự. Các tế bào của mạng nơron (các tế bào xử lý) xử lý các mảng tín hiệu analog hoặc các mảng tín hiệu đồng thời cùng một lúc bằng một lệnh duy nhất cho tất cả các tế bào, điều mà các máy tính số không thực hiện được. Do tính chất động học liên tục về thời gian, bố trí không gian đồ sộ các mảng bộ xử lý nên các CNN-UM có thể thực hiện các tác vụ xử lý có yêu cầu ngặt nghèo về không - thời gian trong thời gian thực.

Các máy tính vạn năng chế tạo trên nền tảng công nghệ CNN được sử dụng đắc lực trong các lĩnh vực xử lý ảnh, quan sát đa mục tiêu di động, giải phương trình vi phân đạo hàm riêng nhiều biến và nhiều lĩnh vực khác.

Hình 2.4. Hệ động lực của một tế bào CNN

Trạng thái ổn định của mạng CNN sau thời gian quá độ phụ thuộc vào bộ ba ma trận trọng số liên kết (A, B, z) của mạng CNN. A, B được gọi là các toán tử hồi tiếp và các toán tử điều khiển hoặc còn được gọi là các mẫu vô tính (một số tài liệu còn dùng từ tập gien để chỉ các toán tử này). Trong mạng CNN 2D đồng nhất, tuỳ theo bán kính liên kết các láng giềng của một tế bào r = 1, r = 2 hay r = 3 mà A, B sẽ là các ma trận trọng số 3x3, 5x5 hoặc 7x7. z là dòng ngưỡng của tế bào. Bộ ba trọng số liên kết (A, B, z) chính là chương trình của mạng CNN. Với mỗi yêu cầu xử lý cụ thể sẽ có một bộ (A, B, z) riêng. Phối hợp các bộ (A, B, z) khác nhau sẽ thu được kết quả mong muốn ở đầu ra của mạng CNN khi đưa các tín hiệu vào đầu vào để xử lý. Trong những thời kỳ đầu, các mẫu của CNN được chế tạo cứng, như vậy rất bất tiện cho sử dụng khi cần thay đổi mẫu với các nhiệm vụ xử lý khác nhau. Về sau khi CNN - UM ra đời các mẫu được chứa trong bộ nhớ mẫu và có thể thay đổi được [9]. Ngày nay các mẫu cho CNN đã có thể được nạp và thay đổi một cách dễ dàng từ các máy tính PC sử dụng các hệ điều hành Windows 2000, XP. Mẫu là một vấn đề mấu chốt trong CNN và vẫn đang được các nhà nghiên cứu trên thế giới dành thời gian nghiên cứu nhằm tìm ra những con đường thiết kế mẫu mới, tìm ra những mẫu mới phục vụ cho các yêu cầu xử lý ngày càng đa dạng trong thực tiễn.

2.4.3.2. Thƣ viện mẫu CNN

Một số mẫu cơ bản đã được các nhà khoa học thuộc Viện hàn lâm khoa học Hungary soạn thảo tập hợp trong thư viện phần mềm các mẫu cho CNN (CNN Software Library 2.1) [4]. Các mẫu này có thể được sử dụng qua các hàm của các thư viện phần mềm hoạt động trên các thiết bị CNN như InstantVision chạy trên thiết bị Bi-I sử dụng chip ACE16k. Các mẫu này cũng có thể được người sử dụng nạp trực tiếp từ các file text chứa mẫu vào ACE16k và sau quá trình quá độ ta nhận được kết quả ở đầu ra. Có thể tải các mẫu từ trang web của Viện nghiên cứu máy tính và tự động hoá thuộc Viện hàn lâm khoa học Hungary. Các mẫu này bao gồm các mẫu thực hiện các tác vụ cơ bản cho xử lý ảnh như phân ngưỡng, dò biên, thực hiện logic, hình thái học, ...ngoài ra còn có một số mẫu như mẫu dò tìm sự di chuyển trên ảnh

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu ứng dụng công nghệ mạng nơron tế bào vào bài toán phân đoạn ảnh (Trang 47)

Tải bản đầy đủ (PDF)

(80 trang)