Thị giác máy tính là một vấn đề còn khá mới mẻ đối với các nhà nghiên cứu tại Việt Nam.Việc nghiên cứu và phát triển các ứng dụng thị giác máy tính mở ra nhiều tiềm năng và khả năng ứng dụng thực tiễn mạnh mẽ.
Theo Wikipedia, Thị giác máy tính (computer vision) là một lĩnh vực bao gồm các phương pháp thu nhận, xử lý ảnh kỹ thuật số, phân tích và nhận dạng các hình ảnh và, nói chung là dữ liệu đa chiều từ thế giới thực để cho ra các thông tin số hoặc biểu tượng, ví dụ trong các dạng quyết định. Việc phát triển lĩnh vực này có bối cảnh từ việc sao chép các khả năng thị giác con người bởi sự nhận diện và hiểu biết một hình ảnh mang tính điện tử. Sự nhận diện hình ảnh có thể xem là việc giải quyết vấn đề của các biểu tượng thông tin từ dữ liệu hình ảnh qua cách dùng các mô hình được xây dựng với sự giúp đỡ của các ngành lý thuyết học, thống kê, vật lý và hình học. Thị giác máy tính cũng được mô tả là sự tổng thể của một dải rộng các quá trình tự động và tích hợp và các thể hiện cho các nhận thức thị giác.
Thị giác máy tính bao gồm các lĩnh vực
Xử lí hình ảnh
Đây là một trong những mảng quan trọng nhất trong kỹ thuật thị giác máy tính, làm tiền đề cho nhiều nghiên cứu sau này. Nó là một lĩnh vực mang tính khoa học và công nghệ. Xử lí ảnh là một ngành khoa học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất mạnh mẽ, kích thích các trung tâm nghiên cứu.
Hai nhiệm vụ cơ bản của xử lí ảnh là nâng cao chất lượng thông tin hình ảnh và xử lí số liệu cung cấp cho các quá trình khác trong đó có việc ứng dụng thị giác vào điều khiển. Xử lí ảnh trước đây chủ yếu được sử dụng làm nâng cao chất lượng ảnh (gia tăng chất lượng ảnh quang học trong mắt người quan sát). Thời gian gần đây, phạm vi ứng dụng xử lí ảnh mở rộng không ngừng, có thể nói hiện không có lĩnh vực khoa học nào không sử dụng các thành tựu của công nghệ xử lí ảnh kĩ thuật số.
Nhận diện mẫu: Giải thích các kỹ thuật khác nhau để phân loại mẫu.
Quang trắc: Liên quan đến việc thu thập các số đo chính xác từ hình ảnh.
Kiểm tra chất lượng sản phẩm: Đo kiểm các thông số kích thước hình học, dò tìm khuyết tật biên dạng,…vv
Điểm tương đồng Machine Vision và Computer Vision
Trước tiên ta sẽ nhắc một chút về khái niệm thị giác máy. Thị giác máy (Machine vision) là công nghệ và phương pháp được sử dụng để kiểm tra và phân tích tự động cho các ứng dụng như kiểm tra tự động, kiểm soát quá trình và rô bốt định hướng bằng xử lý ảnh. Thị giác máy đề cập đến nhiều công nghệ, phần mềm và phần cứng, hệ thống tích hợp, hành động, phương pháp và chuyên môn.
Cả thị giác máy tính và thị giác máy đều sử dụng tính năng chụp và phân tích hình ảnh để thực hiện các tác vụ với tốc độ và độ chính xác mà mắt người không thể nào sánh kịp.
Hệ thống thị giác máy tính và thị giác máy hầu hết có các thành phần giống nhau: Camera, Ánh sáng để đảm bảo hình ảnh rõ ràng, Lens, Frame grabber (trong một số máy ảnh kỹ thuật số sử dụng giao diện hiện đại, không cần Frame grabber), Một máy tính và phần mềm, để phân tích và xử lý hình ảnh, Đối sánh mẫu và các thuật toán khác có thể được sử dụng, tùy thuộc vào bản chất của hình ảnh được phân tích.
Sự khác biệt lớn nhất giữa Machine Vision và Computer Vision
Thị giác máy tính đề cập đến tự động hóa việc chụp và xử lý hình ảnh, với trọng tâm là phân tích hình ảnh. Mtiêu của thị giác máy tính không chỉ là để xem (chụp) mà còn là xử lý và cung cấp các kết quả hữu ích dựa trên ảnh đã quan sát. Thị giác máy đề cập đến việc sử dụng thị giác máy tính trong môi trường công nghiệp, làm cho nó trở thành một danh mục con của thị giác máy tính.
Nếu chúng ta coi thị giác máy là cơ thể của một hệ thống, thì thị giác máy tính là võng mạc, dây thần kinh thị giác, não bộ và hệ thần kinh trung ương. Hệ thống thị giác máy sử dụng máy ảnh để xem hình ảnh, các thuật toán thị giác máy tính sau đó xử lý và giải thích hình ảnh, trước khi hướng dẫn các thành phần khác trong hệ thống hành động dựa trên dữ liệu đó.
Thị giác máy tính có thể được sử dụng độc lập mà không cần phải là một phần của hệ thống máy nào. Nhưng hệ thống thị giác máy sẽ không hoạt động nếu không có máy tính và phần mềm xử lý cụ thể ở cốt lõi của nó. Điều này vượt xa quá trình xử lý hình ảnh. Theo thuật ngữ thị giác máy tính, một hình ảnh thậm chí không bắt buộc phải lấy từ “camera” hay “video”, nó có thể là “hình ảnh” từ cảm biến nhiệt, hồng ngoại, máy dò chuyển động hoặc các nguồn khác.
Thị giác máy tính cũng có thể xử lý hình ảnh 3D và chuyển động. Các hoạt động phức tạp phát hiện tất cả các loại tính năng trong một hình ảnh, phân tích chúng và cung cấp thông tin phong phú về những hình ảnh đó.
Lịch sử của thị giác máy tính
Các nhà khoa học và kỹ sư đã cố gắng nghiên cứu nhiều cách thức khác nhau để máy móc có thể nhìn và hiểu dữ liệu trực quan trong khoảng hơn 60 năm trở lại đây.
Thí nghiệm bắt đầu vào năm 1959, khi các nhà sinh lý học thần kinh cho một con mèo xem một loạt hình ảnh, cố gắng tương quan với phản ứng trong não của nó. Họ phát hiện ra rằng nó phản ứng đầu tiên với các cạnh hoặc đường cứng. Về mặt khoa học, điều này có nghĩa là quá trình xử lý hình ảnh bắt đầu với các hình dạng đơn giản như các cạnh thẳng.
Cùng lúc đó, công nghệ quét hình ảnh máy tính đầu tiên được phát triển, cho phép máy tính số hóa và thu nhận hình ảnh. Một cột mốc quan trọng đã đạt được vào năm 1963, khi máy tính có thể chuyển đổi hình ảnh hai chiều thành ba chiều.
Năm 1974, công nghệ Nhận dạng ký tự quang học (OCR – Optical character recognition) ra đời, có khả năng nhận dạng văn bản được in bằng bất kỳ phông chữ hoặc kiểu chữ nào.
Tương tự, nhận dạng ký tự thông minh hay còn gọi là nhận dạng chữ viết tay (ICR – Intelligent Character Recognition) có thể giải mã văn bản viết tay bằng cách sử dụng mạng nơ-ron. Kể từ đó, OCR và ICR đã tìm ra cách xử lý tài liệu và hóa đơn, nhận dạng biển số xe, thanh toán di động, dịch máy và rất nhiều ứng dụng phổ biến khác.
Năm 1982, nhà thần kinh học David Marr đã xác định rằng thị giác hoạt động theo thứ bậc và đưa ra các thuật toán cho máy móc để phát hiện các cạnh, góc, đường cong và các hình dạng cơ bản tương tự.
Đồng thời, nhà khoa học máy tính Kunihiko Fukushima đã phát triển một mạng lưới các tế bào có thể nhận dạng các mẫu. Mạng lưới được gọi là Neocognitron, bao gồm các lớp phức hợp trong một mạng nơron.
Đến năm 2000, trọng tâm của nghiên cứu là nhận dạng vật thể. Tiêu chuẩn về cách các tập dữ liệu trực quan được gắn thẻ và chú thích đã xuất hiện trong những năm 2000. Năm 2001, các ứng dụng nhận dạng khuôn mặt thời gian thực đầu tiên đã xuất hiện.
Năm 2010, tập dữ liệu ImageNet – một cơ sở dữ liệu hình ảnh quy mô lớn được thiết kế để sử dụng trong nghiên cứu phần mềm nhận dạng đối tượng trực quan đã ra đời. Nó chứa hàng triệu hình ảnh được gắn thẻ của hơn một nghìn đối tượng và cung cấp nền tảng cho CNN và các mô hình học sâu được sử dụng ngày nay.
Năm 2012, một nhóm nghiên cứu từ Đại học Toronto đã đưa CNN vào một cuộc thi nhận dạng hình ảnh. Mô hình AlexNet, đã giảm đáng kể tỷ lệ lỗi khi nhận dạng hình ảnh, chỉ còn vài phần trăm.