Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay

Đối sánh mẫu là gì? Hướng dẫn nhanh

Khám phá kỹ thuật xử lý ảnh được gọi là khớp mẫu, cách thức hoạt động và ý nghĩa của nó trong lịch sử thị giác máy tính.

Hình ảnh thường chứa nhiều chi tiết nhỏ mà con người dễ dàng nhận ra. Tuy nhiên, đối với máy móc, nhiệm vụ này không đơn giản như vậy. Máy móc nhận thức hình ảnh kỹ thuật số như một lưới các giá trị pixel, và ngay cả những thay đổi nhỏ về ánh sáng, góc độ, tỷ lệ hoặc độ sắc nét cũng có thể gây nhầm lẫn. 

Khả năng phân tích hình ảnh của máy móc thường xuất phát từ hai lĩnh vực khoa học máy tính có liên quan mật thiết: xử lý hình ảnh và thị giác máy tính . Mặc dù chúng thường hoạt động cùng nhau, nhưng mục đích cốt lõi của chúng lại khác nhau. 

Xử lý ảnh tập trung vào hình ảnh như dữ liệu thô. Nó có thể cải thiện hình ảnh, nhưng không cố gắng hiểu nội dung của chúng. Đó là nơi mà thị giác máy tính tạo nên sự khác biệt. Thị giác máy tính là một nhánh của trí tuệ nhân tạo (AI) cho phép máy móc hiểu được hình ảnh và video. 

Xử lý ảnh cơ bản đã tồn tại từ nhiều năm nay, nhưng những đổi mới tiên tiến trong lĩnh vực thị giác máy tính thì mới chỉ xuất hiện gần đây. Một cách tuyệt vời để hiểu lịch sử của lĩnh vực này là nhìn lại cách chúng ta từng giải quyết những vấn đề này bằng các phương pháp truyền thống cũ hơn.

Ví dụ, hãy xem xét việc so khớp hình ảnh . Đây là một nhiệm vụ thị giác phổ biến, trong đó hệ thống phải tìm ra xem một đối tượng hoặc mẫu cụ thể có tồn tại bên trong một hình ảnh lớn hơn hay không. 

Ngày nay, việc này có thể được thực hiện dễ dàng và chính xác bằng cách sử dụng trí tuệ nhân tạo (AI) và học sâu. Tuy nhiên, trước khi các mạng nơ-ron hiện đại nổi lên vào những năm 2010, phương pháp được sử dụng phổ biến hơn nhiều là một kỹ thuật đơn giản gọi là đối sánh mẫu. 

Hình 1. Một ví dụ về khớp mẫu ( Nguồn )

So khớp mẫu là một kỹ thuật xử lý ảnh trong đó một ảnh mẫu nhỏ được dịch chuyển từng pixel một trên một ảnh mẫu lớn hơn. Quá trình dịch chuyển tương tự như phép tích chập này cho phép thuật toán tìm ra vị trí khớp nhất với mẫu cụ thể đó.

Trong bài viết này, chúng ta sẽ tìm hiểu về khớp mẫu (template matching) và cách những cải tiến hiện đại giúp nó trở nên đáng tin cậy hơn trong các tình huống thực tế. Bắt đầu nào!

Đối sánh mẫu là gì?

So khớp mẫu cũng có thể được gọi là một kỹ thuật thị giác máy tính kinh điển, nghĩa là nó hoạt động trực tiếp với các điểm ảnh (đơn vị nhỏ nhất của ảnh kỹ thuật số). Kỹ thuật này được sử dụng để tìm một mẫu nhỏ hơn bên trong một hình ảnh lớn hơn. 

Các phương pháp như vậy được định nghĩa bằng hình học, quang học và các quy tắc toán học thay vì huấn luyện các mô hình lớn trên các tập dữ liệu khổng lồ. Nói cách khác, một hệ thống so khớp mẫu so sánh độ sáng, màu sắc và các thông tin pixel khác giữa hai đầu vào: ảnh đầu vào (ảnh lớn hơn) và ảnh mẫu nhỏ hơn (mẫu cần tìm).

Hình 2. Hình A và Hình B là ví dụ về các mẫu. ( Nguồn )

Mục tiêu chính của việc so khớp mẫu là xác định vị trí xuất hiện của mẫu trong toàn bộ khung cảnh và đo lường mức độ trùng khớp giữa mẫu với các vùng khác nhau của hình ảnh. Thuật toán so khớp mẫu thực hiện điều này bằng cách trượt mẫu trên toàn bộ hình ảnh và tính toán điểm số tương đồng tại mỗi vị trí.

Các vùng có điểm số cao hơn được coi là phù hợp nhất, nghĩa là chúng rất giống với mẫu. Vì phương pháp này dựa trên so sánh từng pixel, nên nó hoạt động tốt nhất trong môi trường được kiểm soát, nơi hình dạng của các đối tượng không thay đổi. 

Ví dụ, việc so khớp mẫu có thể được sử dụng trong các nhiệm vụ xác minh nhãn trong kiểm soát chất lượng. Nó có thể dễ dàng so khớp hình ảnh mẫu của nhãn với hình ảnh của sản phẩm hoàn thiện để kiểm tra xem nhãn có được dán đúng vị trí hay không.

Cách thức hoạt động của việc khớp mẫu

Dưới đây là tổng quan từng bước về cách thức hoạt động của việc khớp mẫu:

  • Bước 1 - Chuẩn bị hình ảnh: Quá trình bắt đầu bằng việc tải hình ảnh đầu vào và hình ảnh mẫu, sau đó chuyển đổi cả hai thành hình ảnh xám. Vì việc so khớp mẫu dựa trên việc so sánh giá trị pixel, việc loại bỏ thông tin màu sắc sẽ giảm nhiễu và tăng tốc độ xử lý hình ảnh. 
  • Bước 2 - Trượt mẫu trên ảnh: Tiếp theo, thuật toán khớp mẫu sẽ trượt mẫu trên ảnh lớn hơn từng pixel một (bắt đầu từ góc trên bên trái). Mỗi bước trong quá trình di chuyển này là một lần lặp, trong đó thuật toán trích xuất một mảng ảnh từ ảnh nguồn có kích thước khớp với mẫu.
  • Bước 3 - Đo lường độ khớp: Mỗi mảng ảnh được so sánh với mẫu bằng phương pháp khớp toán học để tạo ra chỉ số tương quan hoặc giá trị tương quan cho mọi vị trí có thể. Các phương pháp phổ biến bao gồm hiệu số bình phương (đo khoảng cách số giữa cường độ pixel để tính toán tổng độ lệch), tương quan chéo chuẩn hóa (nhân các giá trị pixel để xác định mức độ khớp của các mẫu sáng và tối) và hệ số tương quan (trừ đi độ sáng trung bình để đảm bảo độ khớp vẫn chính xác ngay cả khi ánh sáng thay đổi một chút).
  • Bước 4 - Xác định kết quả phù hợp nhất: Sau khi đánh giá tất cả các vị trí, thuật toán sẽ chọn kết quả phù hợp nhất bằng cách tìm giá trị lớn nhất hoặc nhỏ nhất, tùy thuộc vào phương pháp được sử dụng. Một ngưỡng thường được áp dụng cho các kết quả này để đảm bảo chỉ những kết quả phù hợp có điểm tin cậy đủ cao mới được chấp nhận, loại bỏ các phát hiện yếu hoặc không chính xác.
  • Bước 5 - Làm nổi bật kết quả: Cuối cùng, vị trí được phát hiện sẽ được ánh xạ trở lại hình ảnh gốc. Thông thường, một khung bao quanh sẽ được vẽ xung quanh vùng khớp, hiển thị rõ ràng vị trí xuất hiện của mẫu. 

Thực hành đối sánh mẫu

Mặc dù phương pháp so khớp mẫu dựa trên xử lý ảnh thường không được sử dụng trong các giải pháp thị giác máy tính thực tế năng động do những nhược điểm của nó, nhưng nếu bạn muốn thử nghiệm, Python Các thư viện như OpenCV giúp quá trình này trở nên đơn giản và cũng cung cấp các hướng dẫn dễ hiểu. Nó có chức năng matchTemplate tích hợp sẵn để xử lý các phép so sánh toán học phức tạp. 

Ngoài ra, nó còn hỗ trợ các chức năng khác giúp thực hiện các tác vụ đơn giản như tải ảnh bằng hàm imread và chuyển đổi màu sắc bằng hàm cvtColor để chuyển đổi ảnh sang ảnh xám. Chuyển đổi màu sắc là một bước quan trọng vì việc giảm ảnh xuống còn một kênh cường độ duy nhất giúp việc so sánh toán học trong matchTemplate nhanh hơn và ít nhạy cảm hơn với nhiễu màu.

Sau khi bạn đã tạo bản đồ độ tương đồng, OpenCV Ngoài ra, chương trình còn bao gồm chức năng minMaxLoc để hoàn tất quá trình phát hiện. Chức năng này có thể được sử dụng để quét toàn bộ bản đồ nhằm xác định các giá trị tối thiểu và tối đa toàn cục cùng với tọa độ chính xác của chúng. Tùy thuộc vào phương pháp đối sánh được sử dụng, minMaxLoc cho phép bạn xác định ngay lập tức vị trí của kết quả khớp tốt nhất bằng cách tìm ra hệ số tương quan cao nhất hoặc giá trị lỗi thấp nhất trong dữ liệu.

Ngoài ra, OpenCV các thư viện như NumPy Chúng rất cần thiết để xử lý các mảng hình ảnh và áp dụng ngưỡng cho kết quả, trong khi Matplotlib thường được sử dụng để trực quan hóa bản đồ độ tương đồng và kết quả phát hiện cuối cùng. Cùng nhau, các công cụ này cung cấp một môi trường hoàn chỉnh để xây dựng và gỡ lỗi giải pháp so khớp mẫu.

Ứng dụng thực tế của việc khớp mẫu

Giờ đây, khi đã hiểu rõ hơn về cách thức hoạt động của việc so khớp mẫu, chúng ta hãy cùng xem xét kỹ hơn ứng dụng của nó trong các tình huống thực tế. 

Nhận diện các phong cách kiến trúc truyền thống

Trong lĩnh vực nghiên cứu di sản văn hóa và kiến trúc, các nhà nghiên cứu phải phân tích ảnh chụp các công trình lịch sử, đền thờ và tượng đài để hiểu được sự khác biệt về kiểu dáng thiết kế giữa các vùng. Trước khi các mô hình thị giác máy tính tiên tiến được sử dụng rộng rãi, họ đã sử dụng các kỹ thuật đối sánh ảnh để nghiên cứu các công trình này.

Việc đối sánh mẫu cho phép các nhà nghiên cứu tập trung vào các đặc điểm kiến trúc cụ thể như đường viền mái, bố trí cửa sổ hoặc họa tiết tường. Bằng cách trượt các mẫu hoặc hình ảnh tham chiếu trên các hình ảnh lớn hơn, họ có thể xác định các hình dạng lặp lại và giảm bớt việc phân tích hình ảnh thủ công, vốn có thể mất hàng giờ.

Một ví dụ thú vị đến từ một nghiên cứu liên quan đến nhà truyền thống của Indonesia . Các nhà nghiên cứu đã tạo ra các mẫu nhỏ của các đặc điểm đặc trưng và so sánh chúng với các bức ảnh kích thước thật. Phương pháp này được sử dụng để làm nổi bật các vùng ảnh phù hợp nhất với mẫu và classify các phong cách kiến trúc khác nhau giữa các vùng.

Hình 3. Sử dụng phương pháp khớp mẫu để classify Nhà truyền thống ở Indonesia ( Nguồn )

Phát hiện đối tượng trong hệ thống thị giác công nghiệp

Môi trường công nghiệp có thể hưởng lợi từ các hệ thống thị giác có khả năng nhanh chóng... detect Các thành phần, kiểm tra lắp ráp hoặc phát hiện lỗi. Trước khi học sâu trở nên phổ biến trong sản xuất , nhiều nhóm đã thử nghiệm các phương pháp đối sánh hình ảnh để tự động hóa các tác vụ này.

Nói một cách đơn giản, mẫu tham chiếu linh kiện có thể được sử dụng để quét hình ảnh từ dây chuyền sản xuất và làm nổi bật các vùng khớp với mẫu. Phương pháp này hoạt động tốt khi các bộ phận xuất hiện ở vị trí nhất quán và ánh sáng ổn định.

Đối sánh mẫu để phát hiện khối u phổi 

Ngay cả khi công nghệ tiên tiến đang tạo ra tác động lớn trong lĩnh vực chăm sóc sức khỏe, việc chẩn đoán các vấn đề sức khỏe từ hình ảnh y tế như chụp CT vẫn còn nhiều thách thức. Theo truyền thống, các bác sĩ X quang phải xem xét thủ công từng lát cắt hình ảnh, một quá trình đòi hỏi độ chính xác cao và tốn nhiều thời gian. 

Trước khi học sâu được ứng dụng trong chăm sóc sức khỏe, các nhà nghiên cứu đã cố gắng sử dụng phương pháp so khớp mẫu để tối ưu hóa quy trình làm việc và hỗ trợ xác định các bất thường. Một ví dụ điển hình của kỹ thuật này liên quan đến việc phát hiện khối u hoặc nốt sần ở phổi. 

Trong phương pháp này, các nhà nghiên cứu tạo ra các mẫu tham chiếu đại diện cho hình dạng và cường độ điển hình của khối u. Sau đó, hệ thống sẽ trượt các mẫu này trên ảnh chụp của bệnh nhân, đo lường sự tương đồng ở mỗi tọa độ.

Hình 4. Phát hiện khối u phổi bằng phương pháp so khớp mẫu ( Nguồn )

Ưu điểm và nhược điểm của việc khớp mẫu

Dưới đây là một số lợi ích chính của việc sử dụng phương pháp khớp mẫu:

  • Trực quan và dễ hiểu : So khớp mẫu rất dễ hiểu và dễ triển khai, khiến nó trở thành điểm khởi đầu lý tưởng cho người mới bắt đầu trong lĩnh vực trí tuệ nhân tạo và thị giác máy tính .
  • Đáng tin cậy trong điều kiện được kiểm soát : Thiết bị hoạt động tốt trên ảnh xám dưới ánh sáng ổn định, cho kết quả chính xác khi các họa tiết và phông nền ổn định .
  • Tích hợp dễ dàng : Sử dụng Python các thư viện như OpenCV Nhờ đó, việc khớp mẫu có thể được áp dụng nhanh chóng vào các dự án thực tế mà không cần thiết lập phức tạp hoặc tính toán nặng nề.

Mặc dù việc đối sánh mẫu mang lại nhiều lợi ích, nhưng nó cũng có những hạn chế. Dưới đây là một vài thách thức cần lưu ý:

  • Nhạy cảm với tỷ lệ và xoay : Sự thay đổi về kích thước hoặc hướng của mẫu có thể làm giảm độ chính xác .
  • Sự phụ thuộc vào ánh sáng và độ tương phản: Sự thay đổi về ánh sáng hoặc độ tương phản giữa mẫu và hình ảnh có thể gây ra sự không khớp hoặc làm cho việc sử dụng mẫu trở nên khó khăn hơn. detect .
  • Khả năng thích ứng hạn chế : Không giống như các phương pháp dựa trên trí tuệ nhân tạo, phương pháp so khớp mẫu không thể học hỏi từ dữ liệu hoặc cải thiện theo thời gian. Nó hoạt động tốt nhất trong môi trường được kiểm soát hoặc lặp đi lặp lại.

Những điều cần nhớ 

Thị giác máy tính là một lĩnh vực rộng lớn và bao gồm nhiều kỹ thuật khác nhau. Tìm hiểu về các kỹ thuật xử lý ảnh truyền thống, chẳng hạn như so khớp mẫu, là một điểm khởi đầu tuyệt vời để hiểu cách phân tích ảnh hoạt động. Những đổi mới tiên tiến trong Trí tuệ nhân tạo thị giác (Vision AI) được xây dựng dựa trên cùng các khái niệm cốt lõi và giải quyết các vấn đề tương tự. 

Bạn muốn tìm hiểu thêm về AI? Hãy tham gia cộng đồng của chúng tôi và xem kho lưu trữ GitHub của chúng tôi. Tìm hiểu cách AI trong lĩnh vực bán lẻAI thị giác trong sản xuất đang thúc đẩy sự thay đổi. Khám phá các tùy chọn cấp phép của chúng tôi để xây dựng với AI thị giác ngay hôm nay!

Hãy cùng nhau xây dựng tương lai
của AI!

Bắt đầu hành trình của bạn với tương lai của học máy

Bắt đầu miễn phí