Nhận dạng ảnh (còn gọi là nhận dạng đối tượng; tiếng Anh image recognition, object recognition) là thuật ngữ dùng để chỉ các công nghệ máy tính có khả năng nhận biết người, động vật, vật thể hoặc các đối tượng mục tiêu khác thông qua việc sử dụng các phương pháp, thuật toán trong học máy. Thuật ngữ nhận dạng ảnh liên quan chặt chẽ với các thuật ngữ thị giác máy tính (computer vision), một thuật ngữ bao quát cho quá trình huấn luyện máy tính để chúng có thể “nhìn” được như con người, và xử lý ảnh (image processing), thuật ngữ đề cập đến việc thực hiện các công việc chuyên sâu trên dữ liệu ảnh bằng máy tính (xt. Thị giác máy tính, Xử lý ảnh).
Các hệ thống nhận dạng ảnh tạo thành một thành phần cốt lõi và có mặt trong hầu hết các hệ thống thông minh hiện đại. Nghiên cứu về các thuật toán nhận dạng đã dẫn đến những tiến bộ vượt bậc trong tự động hóa nhà máy, văn phòng thông qua việc tạo ra các hệ thống nhận dạng ký tự quang học, hệ thống kiểm tra dây chuyền lắp ráp công nghiệp, hệ thống nhận dạng khiếm khuyết trong các sản phẩm điện tử. Nó cũng đã thúc đẩy những tiến bộ đáng kể trong xử lý ảnh y học, quốc phòng, xe tự lái, robotics, sinh trắc học... Tuy có thể chứng kiến hiệu suất vượt xa khả năng con người của các hệ thống như vậy trong những môi trường được kiểm soát chặt chẽ nhưng nhìn chung cho đến nay, các hệ thống nhận dạng ảnh, từ hệ thống nhận dạng ký tự đến các hệ thống có thị giác hiện đại..., đều phải đối mặt với khả năng khái quát hóa so với hệ thống thị giác của con người. Những tác nhân dẫn tới mất kiểm soát bao gồm:
- Biến thiên của điểm nhìn (viewpoint variation). Trong một thế giới thực, các thực thể trong ảnh được nhìn theo các hướng khác nhau và khi các hình ảnh đó được đưa vào hệ thống sẽ làm hệ thống dự đoán không chính xác. Nói cách khác, hệ thống không hiểu rằng việc thay đổi góc nhìn hình ảnh (trái, phải, dưới, trên) sẽ không làm cho thực thể khác đi và đó là lý do tạo ra những thách thức trong nhận dạng ảnh.
- Biến thiên tỷ lệ (scale variation). Biến thiên về kích thước gây ảnh hưởng đến việc phân loại đối tượng, ví dụ khi nhìn đối tượng, kích thước của nó càng lớn và ngược lại.
- Biến dạng (deformation). Các đối tượng là không được thay đổi ngay cả khi chúng bị biến dạng. Trong thế giới thực, thường hình dạng vật thể hay bị thay đổi do nhiều nguyên nhân khác nhau và gây nên khó khăn cho hệ thống nhận dạng ảnh.
- Biến thiên nội lớp (intra-class variation). Một đối tượng nhất định có thể có các biến thể khác nhau trong cùng một lớp. Chúng có thể có hình dạng, kích thước khác nhau, nhưng vẫn đại diện cho cùng một lớp. Ví dụ, ghế ngồi có kích cỡ và hình dáng khác nhau.
- Sự che khuất (occlusion). Một số đối tượng nhất định có thể che khuất các đối tượng khác khiến thông tin được cung cấp cho hệ thống không đầy đủ. Cần phải xây dựng những thuật toán nhạy cảm với hiện tượng này và đưa ra hàng loạt các dữ liệu dạng như vậy trong tập mẫu.
- Sự hỗn độn của nền (background clutter). Dữ liệu ảnh nằm lẫn trong các loại dữ liệu khác như các ảnh trong sách, các quảng cáo, các nội dung trang trí...
Một số thuật ngữ thường gặp không được xác định rõ ràng dẫn đến mơ hồ trong khái niệm như phát hiện (detection), định vị (localization), nhận biết (recognition), hiểu (understanding), phân loại (classification), kiểm chứng (verification) và định danh (identification) đối tượng. Nhận dạng ảnh là thuật ngữ chung để nói về một phổ rộng các bài toán với xương sống là nhận dạng đối tượng (object recognition). Nó liên quan đến xử lý ảnh ở khía cạnh, trước khi tiến hành các bước bên dưới để nhận dạng đối tượng, nhiều khi phải cải thiện chất lượng ảnh, khử nhiễu, tăng độ tương phản, độ sáng tối… Theo sự đồng thuận của đa số trong cộng đồng nghiên cứu, nhận dạng đối tượng được phân cấp thành bốn lớp bài toán (có thể lồng nhau) với mức độ phức tạp tăng theo từng lớp:
- Phát hiện đối tượng (object detection). Cho trước một ảnh phức tạp. Hãy chỉ ra một đối tượng cụ thể có hiện diện trong ảnh hay không?
- Định vị đối tượng (object localization). Bao gồm phát hiện đối tượng và nếu đối tượng xuất hiện trong ảnh thì chỉ ra thông tin vị trí chính xác của nó.
- Nhận dạng đối tượng (object recognition). Định vị tất cả các đối tượng hiện diện trong ảnh cùng với nhãn gán cho chúng.
- Hiểu cảnh quan (scene understanding). Cho một hình ảnh phức tạp. Hãy nhận dạng tất cả các đối tượng có trong hình ảnh và mô tả các hành động và các mối quan hệ của các đối tượng khác nhau trong bối cảnh của hình ảnh này.
Các thành phần lõi của một hệ thống nhận dạng ảnh kinh điển bao gồm:
- Cơ sở dữ liệu của mô hình (model database): Cơ sở dữ liệu này chứa tất cả các mô hình được hệ thống biết đến. Thông tin trong cơ sở dữ liệu mô hình phụ thuộc vào cách tiếp cận được sử dụng để nhận dạng. Nó có thể là các mô tả định tính hoặc chức năng cho đến thông tin bề mặt hình học chính xác. Trong nhiều trường hợp, các mô hình của các đối tượng là các vectơ đặc trưng trừu tượng. Một đặc trưng là một thuộc tính của đối tượng mang thông tin quan trọng trong việc mô tả và phân biệt (nhận dạng) một đối tượng với đối tượng khác. Kích thước, màu sắc, hình dạng... là những loại đặc trưng thường được sử dụng.
- Bộ trích chọn đặc trưng (feature detector): Bộ trích chọn đặc trưng giúp hình thành các giả thuyết về đối tượng, một số toán tử thường được lựa chọn để trích chọn ra các đặc trưng, ví dụ như các toán tử tích chập, hay rộng hơn là mạng nơ ron tích chập, mục tiêu để làm nổi thông tin đặc trưng. Các đặc trưng được lựa chọn phụ thuộc vào các loại đối tượng cần nhận dạng và cách lựa chọn cơ sở dữ liệu mô hình.
- Bộ sinh giả thiết (hypothesizer): sử dụng các đặc trưng được phát hiện trong hình ảnh, nhằm chỉ ra khả năng xuất hiện của các đối tượng trong toàn cảnh. Bước này được sử dụng để giảm không gian tìm kiếm trong quá trình nhận dạng và sử dụng cách tổ chức lập chỉ mục trong cơ sở dữ liệu mô hình để loại bỏ các đối tượng ứng cử viên không hợp lý.
- Bộ kiểm chứng giả thiết (hypothesis verifier): nhằm xác định đối tượng có khả năng nhất dựa trên tất cả các bằng chứng của các giả thuyết về đối tượng.
Các thành phần kiểm chứng và sinh giả thiết có thể có tầm quan trọng khác nhau trong các cách tiếp cận nhận dạng khác nhau. Ví dụ, một số hệ thống chỉ sử dụng giả thuyết và sau đó quyết định chọn đối tượng có khả năng cao nhất như phương pháp phân loại mẫu. Mặt khác, nhiều hệ thống AI phụ thuộc rất ít vào giả thuyết hình thành và chỉ tập trung cho giai đoạn kiểm chứng, ví dụ như phương pháp khớp mẫu, nó bỏ qua hoàn toàn giai đoạn hình thành giả thuyết. Vì vậy khi xây dựng một hệ thống nhận dạng đối tượng phải lựa chọn các công cụ và kỹ thuật phù hợp cho các bước thảo luận ở trên.
Sự phổ biến của phương pháp học máy, đặc biệt là học sâu với mạng nơ ron tích chập và các cách tiếp cận biểu diễn đối tượng khác như phương pháp dựa trên sự xuất hiện (parts-and-shape), mô hình gói đặc trưng/từ (bags-of-features/word representations), phương pháp cửa sổ trượt (sliding window approaches)..., đã làm mờ đi phần nào sự khác biệt giữa các thành phần được đề cập ở trên. Ngày nay không có gì lạ khi bắt gặp các phương pháp nhận dạng phổ biến bao gồm một pha trích xuất đặc trưng duy nhất và theo sau là việc áp dụng các tầng của một hoặc nhiều bộ phân loại mạnh hơn.
Lịch sử[sửa]
Nhận dạng ảnh có khởi đầu của mình từ các ứng dung nhận dạng chữ quang học. Qua hơn sáu thập kỷ, lĩnh vực này đã trải qua các mốc phát triển như sau:
- Từ những năm 1960 cho đến cuối những năm 1980: Thời kỳ phát triển của các phương pháp dựa trên căn chỉnh và các dạng hình học nguyên thủy như các xấp xỉ đường cong, các hình ellipses, các khối hình trụ...
- Đầu những năm 1990 xuất hiện các phương pháp dựa trên sự xuất hiện (appearance-based methods) của các cấu phần, các nghiên cứu về tính bất biến theo các yếu tố như điểm nhìn, sự chiếu sáng...
- Nửa cuối 1990 xuất hiện các phương pháp cửa sổ trượt (sliding window approaches) để biểu diễn đối tượng thông qua trích chọn các đặc trưng cục bộ của chúng.
- Đầu những năm 2000 các mô hình cấu phần-hình dạng (parts-and-shape models) được nghiên cứu và áp dụng.
- Sau nửa cuối 2000 cho đến nay các mô hình gói đặc trưng/từ (bags of features/words models) nhanh chóng thể hiện tính ưu việt trong nhiều ứng dụng.
- Những năm gần đây các phương pháp học sâu, đặc biệt mạng nơ ron tích chập, đã mang lại các tiến bộ mang tính đột phá trong nhận dạng ảnh.
- Xu thế trong tương lai là việc kết hợp các phương pháp cục bộ với các phương pháp toàn cục, mô hình hóa ngữ cảnh nhằm giải quyết các bài toán hiểu cảnh quan (scene understanding).
Ứng dụng[sửa]
Nhận dạng ảnh hiện đang được ứng dụng rộng rãi trong nhiều lĩnh vực và tạo nên những thay đổi sâu sắc trong mọi mặt đời sống xã hội. Có thể điểm qua vài ví dụ tiêu biểu:
- Máy bay không người lái được trang bị khả năng nhận dạng ảnh có thể cung cấp khả năng giám sát, kiểm tra và kiểm soát tự động các tài sản nằm ở vùng sâu vùng xa dựa trên thị giác máy.
- Công nghệ chế tạo. Kiểm tra dây chuyền sản xuất, đánh giá các khâu quan trọng một cách thường xuyên. Giám sát chất lượng của các sản phẩm cuối cùng để giảm thiểu khuyết tật. Việc đánh giá điều kiện làm việc của công nhân có thể giúp các ngành sản xuất kiểm soát hoàn toàn các hoạt động khác nhau trong toàn bộ hệ thống.
- Xe tự hành với khả năng nhận dạng ảnh có thể xác định các hoạt động trên đường và thực hiện các hành động cần thiết. các robot nhỏ có thể giúp các ngành công nghiệp hậu cần định vị và chuyển các vật thể từ nơi này sang nơi khác. Nó cũng duy trì cơ sở dữ liệu về lịch sử di chuyển sản phẩm để ngăn sản phẩm bị thất lạc hoặc đánh cắp.
- Giám sát quân sự. Phát hiện các hoạt động bất thường ở khu vực biên giới và khả năng ra quyết định tự động có thể giúp ngăn chặn sự xâm nhập và dẫn đến cứu mạng sống của binh lính.
- Hoạt động trong rừng. Máy bay không người lái có thể giám sát rừng, dự đoán những thay đổi có thể dẫn đến cháy rừng và ngăn chặn nạn săn trộm. Nó cũng có thể cung cấp giám sát đầy đủ trên một vùng rộng lớn mà con người không thể dễ dàng tiếp cận.
- Chăm sóc sức khỏe. Một trong những khả năng nổi bật nhất của nhận dạng ảnh là hỗ trợ tạo ra hiện thực ảo tăng cường (augmented reality - AR) ứng dụng trong y học - một công nghệ hình ảnh siêu âm được tạo ra trên máy tính từ góc nhìn của người dùng. Khi cung cấp cho một hệ thống trí tuệ nhân tạo công nghệ hiện thực ảo tăng cường với cơ sở dữ liệu chứa các dấu hiệu trực quan về bệnh lý hoặc bệnh tật sẽ tạo ra một trợ lý y tế với trí nhớ tuyệt vời. Với nó, các bác sĩ có thể nhận được các đề xuất chẩn đoán chi tiết theo thời gian thực khi theo dõi thực trạng bệnh nhân hoặc các tài liệu y tế trong khi khám. Cũng có thể sử dụng các kỹ thuật thị giác máy tính để giúp người khiếm thị trong các tương tác hàng ngày của họ, giống như một chiếc gậy đi bộ công nghệ cao...
- An ninh và trật tự an toàn xã hội. Nhận dạng vân tay, nhận dạng mặt người, nhận dạng biển số xe, nhận dạng thẻ tín dụng...
- Tìm kiếm thông tin. Nhận dạng ảnh cũng đã được ứng dụng để tìm kiếm thông tin trong Google, Bing...
Xu thế[sửa]
Nhận dạng ảnh là công cụ mạnh mở ra kỷ nguyên trong đó máy bắt đầu “hiểu” những gì chúng “nhìn thấy” nhờ được trang bị các thiết bị quang học. Nếu so sánh với nhận dạng tiếng nói, nhận dạng ảnh hứa hẹn mang lại lợi ích, như người ta vẫn nói “Trăm nghe không bằng một thấy” hay “Một bức tranh đáng giá hơn ngàn lời nói”.
Như đã trình bày, nhận dạng ảnh đã đi một chặng đường dài và hiện vẫn là chủ đề của rất nhiều thảo luận và tranh cãi trong cộng đồng người dùng. Gã khổng lồ truyền thông xã hội Facebook cũng như đại gia công nghệ Google đã bắt đầu tăng cường sử dụng nhận dạng ảnh trong không gian kỹ thuật số của riêng mình nhằm cung cấp nhiều ứng dụng hữu ích cho người dùng. Tuy nhiên, trong nhiều tranh luận cũng đã đưa ra những câu hỏi về việc những tiến bộ nhanh chóng trong nhận dạng ảnh sẽ ảnh hưởng đến quyền riêng tư và bảo mật trên toàn thế giới như thế nào.
Tại Việt Nam các nghiên cứu và ứng dụng nhận dạng ảnh cũng đang được triển khai tại nhiều cơ sở nghiên cứu, giảng dạy cũng như các doanh nghiệp. Trong những năm qua chúng ta đã thấy xuất hiện các sản phẩm thương mại nhận dạng chữ quang học, các hệ thống camera giám sát an ninh, các dự án ứng dụng nhận dạng ảnh trong y học...Tuy nhiên, việc phát triển và khai thác sức mạnh của nhận dạng ảnh còn làm một bước dài phía trước phụ thuộc vào nguồn lực con người cũng như nguồn lực tài chính.
Xem thêm[sửa]
Tài liệu tham khảo[sửa]
- Rafael C. Gonzalez et al. Digital Image Procesing (4th Edtion), Pearson, 2018.
- Richard Szeliski. Computer Vision: Algorithms and Applications, Springer, 2010.
- BishopC. M. Neural networks for pattern recognition, Oxford university press, 1995.
- David A. Forsyth, Jean Ponce. Computer Vision: A Modern Approach. Prentice Hall, 2003. ISBN 978-0-13-085198-7.