Chuyển đến nội dung chính

Hướng dẫn cho người mới bắt đầu về Vision API của Google trong Python

Tìm hiểu Vision API là gì và những gì nó cung cấp. Cuối hướng dẫn, bạn cũng sẽ biết cách gọi Vision API từ mã Python của mình.
Đã cập nhật 5 thg 10, 2026  · 10 phút đọc

Khám phá cùng AI

ChatGPTClaudePerplexity

Đã khá lâu kể từ khi Google phát hành một API chuyên dụng có tên là Vision API để thực hiện các tác vụ liên quan đến thị giác máy tính. Thị giác máy tính là một lĩnh vực nghiên cứu cách máy tính xử lý hình ảnh. Với chúng ta, việc rút ra thông tin hữu ích từ một hình ảnh là khá dễ dàng, nhưng máy tính làm điều đó như thế nào?

Ví dụ, bạn cung cấp cho máy tính một hình ảnh con chó và nhờ phần mềm, máy tính cho bạn biết rằng hình ảnh đó là ảnh của một con chó. Đây chính là nơi thị giác máy tính phát huy vai trò. Thị giác máy tính là cả một thế giới nghiên cứu riêng, và Vision API cung cấp nhiều tiện ích để thực hiện các tác vụ liên quan đến thị giác máy tính một cách cực kỳ đơn giản. Điểm hay nhất là các lập trình viên hoàn toàn không có kinh nghiệm trước đó về thị giác máy tính vẫn có thể sử dụng Vision API bằng cách đọc tài liệu của nó.

Hướng dẫn này sẽ giới thiệu bạn về Vision API và cách gọi nó từ mã Python.

Lưu ý: Nếu bạn muốn biết thêm về API nói chung (từ góc độ Python và Machine Learning) trước khi bắt đầu với hướng dẫn này, dưới đây là một số tài nguyên xuất sắc:

Vision API của Google là gì? Giới thiệu chi tiết hơn

Google đã đóng gói các mô hình Machine Learning của họ trong một API để cho phép nhà phát triển sử dụng công nghệ Vision. Vision API có thể nhanh chóng phân loại hình ảnh vào hàng nghìn hạng mục và gán cho chúng các nhãn hợp lý. Nó thậm chí có thể phát hiện từng đối tượng, khuôn mặt và các đoạn văn bản trong một hình ảnh.

Ở mức độ khái quát, Vision API của Google cho phép bạn làm hai việc:

  • Sử dụng API trực tiếp từ mã của bạn để thực hiện phân tích hình ảnh mạnh mẽ ở quy mô lớn.
  • Xây dựng các mô hình tùy chỉnh bằng API để có thêm linh hoạt cho trường hợp sử dụng cụ thể của bạn.

API này đặc biệt hữu ích vì nhu cầu về những người làm “Full-Stack” ngày nay đang tăng rất nhanh. Hãy xem một kịch bản trong đó một lập trình viên web Full-Stack (nghĩa là người này nắm cả công nghệ front-end và back-end cho phát triển web) được yêu cầu xây dựng một trang web nhận ảnh và phát hiện loại của chúng. Điều này chắc chắn đòi hỏi kiến thức tốt về Thị giác máy tính (nếu họ chưa có) vì lập trình viên phải lập trình phần back-end sao cho có thể nhận dạng chính xác ảnh đầu vào. Giả sử thời hạn cũng không còn nhiều.

Trong tình huống như vậy, nếu nhà phát triển bắt đầu học Thị giác máy tính từ đầu rồi mới triển khai các tác vụ cần thiết, họ rất dễ trễ hạn. Thay vào đó, nếu họ sử dụng các mô hình thị giác máy tính đã được huấn luyện sẵn và đồng thời học dần các khái niệm nền tảng trong quá trình phát triển, đó sẽ là cách thực tế hơn. Đây chính xác là một trong những tình huống Vision API phát huy tác dụng. API cung cấp nhiều mô hình tiên tiến đã được huấn luyện để phục vụ nhiều bài toán kinh doanh thực tế.

Thuật ngữ “Full-Stack” cũng đang gắn với các vai trò như Kỹ sư Machine Learning, Nhà khoa học dữ liệu, v.v. Một người thực hành Machine Learning/Data Scientist Full-Stack được kỳ vọng thiết kế và phát triển, hoặc ít nhất là hiểu các quy trình kinh doanh đầu-cuối. Điều này bao gồm “Xây dựng mô hình sẵn sàng đưa vào sản xuất” như một bước then chốt, trong đó cá nhân/đội ngũ đóng gói mô hình đã phát triển thành một API hoặc một tập API và triển khai lên môi trường sản xuất. Thuật ngữ sản xuất sẽ khác nhau tùy trường hợp sử dụng, nhưng ý tưởng/khung quy trình chung thì giống nhau. Vision API cho phép bạn huấn luyện hiệu quả các mô hình thị giác tùy chỉnh với AutoML Vision BETA.

Tuyệt vời! Đến đây, bạn đã có cái nhìn tổng quan khá tốt về Vision API. Một thử nghiệm nhỏ thú vị bạn có thể làm trên trang chủ Vision là phân tích những hình ảnh yêu thích của bạn và rút ra thông tin hữu ích nhờ Vision. Các bước thực hiện như sau:

  • Truy cập trang chủ Vision.
  • Ở đó có mục “Try the API”. Bạn có thể kéo/thả hoặc tải lên một ảnh vào giao diện này. try the api
  • Khi bạn cung cấp ảnh, nó sẽ trả về một loạt thông tin về ảnh: vision detected facts Như bạn thấy, Vision phát hiện rất nhiều thông tin về ảnh chỉ trong chốc lát. Hãy thoải mái khám phá các tab khác để tìm hiểu thêm về ảnh.

Hãy tưởng tượng tác vụ này được thực hiện trên một tỷ ảnh. Sử dụng một API như vậy chắc chắn sẽ mang lại hiệu quả. Bây giờ, hãy tìm hiểu những gì Vision API cung cấp và xem một vài ví dụ về các trường hợp sử dụng thực tế mà API đã phục vụ.

Vision API cung cấp gì - Một số trường hợp sử dụng chuyên biệt

Vision API nổi tiếng với độ chính xác cao. Tài liệu của Vision API có một bộ sưu tập hướng dẫn tuyệt vời, cung cấp cái nhìn rất chi tiết về API. Nhưng ở lần tiếp cận đầu tiên, những thứ này có thể trông hơi quá tải. Vì vậy, để đơn giản, bạn sẽ tìm hiểu một vài trường hợp sử dụng đã được Vision API phục vụ.

  • Nhận dạng ký tự quang học (OCR): Đây là ví dụ kinh điển của Thị giác máy tính, chủ yếu liên quan đến việc trích xuất văn bản từ hình ảnh. Vision API bao gồm nhiều phương pháp hiện đại để làm việc này.
  • Phát hiện thuộc tính hình ảnh: Đây là tác vụ bạn đã thực hiện ở phần trước. Với Vision API, bạn có thể truy xuất các thuộc tính chung của hình ảnh, như màu sắc chủ đạo.
  • Gắn nhãn (Label Detection): Tác vụ này gán một nhãn (hoặc “thẻ”) cho hình ảnh dựa trên nội dung. Ví dụ, một bức ảnh con chó có thể tạo nhãn “dog”, “animal” hoặc các gợi ý tương tự. Đây là bước quan trọng trong truy hồi thông tin dựa trên nội dung.
  • Phát hiện khuôn mặt: Với một hoặc nhiều hình ảnh, nhiệm vụ là phát hiện các khuôn mặt có trong đó. Ứng dụng rất lớn như trong hệ thống giám sát.

Đây là một vài trường hợp sử dụng xuất sắc mà Vision API thực hiện rất mượt, và bạn có thể tích hợp bất kỳ mục nào ở trên vào ứng dụng của mình trong thời gian rất ngắn. Nếu muốn tìm hiểu thêm các trường hợp như vậy, hãy xem các hướng dẫn này.

Vision API hỗ trợ nhiều ngôn ngữ như Go, C#, Java, PHP, Node.js, Python, Ruby. Ở các phần tiếp theo, bạn sẽ thấy cách dùng Vision API trong Python.

Thư viện khách Vision API cho Python

Bước đầu tiên để sử dụng phiên bản Python của Vision API là cài đặt nó. Cách tốt nhất là thông qua pip.

!pip install google-cloud-vision

Khi cài đặt thành công, bước tiếp theo là xác minh liệu nó đã cài đặt ổn chưa.

from google.cloud import vision

Nếu dòng mã trên chạy thành công, bạn sẵn sàng tiếp tục. Google cung cấp một loạt hướng dẫn tuyệt vời về sử dụng Vision API trong Python.

Bây giờ, bạn sẽ xây dựng một ứng dụng Python đơn giản có thể phát hiện một số thuộc tính chung của hình ảnh, như màu sắc chủ đạo.

Một nghiên cứu tình huống với Vision API trong Python

Ứng dụng của bạn sẽ nhận đường dẫn tới một hình ảnh làm đầu vào và hiển thị các thuộc tính chung của hình ảnh tương ứng. Điều này hữu ích khi ảnh nằm trong máy tính nơi ứng dụng được chạy. Nhưng nếu bạn cần đọc ảnh từ internet thì sao? Vision API cũng hỗ trợ đọc ảnh từ internet.

Trong nghiên cứu tình huống này, bạn sẽ học cách xử lý kịch bản đầu tiên. Còn biến thể đọc từ internet thì chỉ cần thêm một dòng mã.

Như thường lệ, bạn bắt đầu bằng cách import vision từ mô-đun google.cloud.

from google.cloud import vision

Bước tiếp theo là gọi ImageAnnotatorClient() chứa các tiện ích để trích xuất thuộc tính hình ảnh.

client = vision.ImageAnnotatorClient()

Bạn rất có thể gặp lỗi nếu biến môi trường GOOGLE_APPLICATION_CREDENTIALS chưa được thiết lập. Lý do là các thư viện này sử dụng Application Default Credentials (ADC) để định vị thông tin xác thực của ứng dụng. Khi mã của bạn sử dụng các thư viện như vậy, cơ chế sẽ kiểm tra thông tin xác thực của bạn.

Làm theo liên kết này để tìm hiểu cách tạo GOOGLE_APPLICATION_CREDENTIALS. Mục tiêu của bạn là tạo tệp client_secrets.json dùng cho mục đích xác thực.

Sau khi có client_secrets.json, bạn sẽ chạy đoạn mã sau để thiết lập biến môi trường GOOGLE_APPLICATION_CREDENTIALS.

import os
os.environ["GOOGLE_APPLICATION_CREDENTIALS"]="client_secrets.json"

Bây giờ chạy đoạn mã dưới đây sẽ không còn báo lỗi.

client = vision.ImageAnnotatorClient()

Tiếp theo, bạn sẽ viết mã để đọc ảnh thông qua một đường dẫn cho trước.

dog

Nguồn ảnh

import io

path = 'Image.jpeg'
with io.open(path, 'rb') as image_file:
        content = image_file.read()

Bạn đã nạp ảnh vào không gian làm việc thành công. Bây giờ, bạn sẽ khởi tạo một đối tượng kiểu vision.types.Image và truyền đối số content=content.

image = vision.types.Image(content=content)

Bạn chỉ còn những bước cuối cùng của ứng dụng phát hiện Thuộc tính hình ảnh. Ở các bước này, bạn sẽ:

  • Gọi client.image_properties với đối số (image=image).
  • Lưu phản hồi của image_properties() vào biến response và trích xuất các thuộc tính ảnh bằng cách gọi đối số image_properties_annotation của response.
  • Hiển thị một số thuộc tính của ảnh theo định dạng dễ đọc.
 response = client.image_properties(image=image)
props = response.image_properties_annotation
print('Properties of the image:')

for color in props.dominant_colors.colors:
    print('Fraction: {}'.format(color.pixel_fraction))
    print('\tr: {}'.format(color.color.red))
    print('\tg: {}'.format(color.color.green))
    print('\tb: {}'.format(color.color.blue))

Bạn có thể lại gặp lỗi nếu chưa bật Vision API cho ứng dụng của mình. Việc bật API cực kỳ dễ, và thông báo lỗi sẽ cung cấp hướng dẫn để bạn bật nhanh chóng.

Sau khi bật API, bạn cũng cần bật Billing để sử dụng Vision API. Các tiện ích cho phát hiện Thuộc tính hình ảnh chỉ tốn $0.60. Sau khi hoàn tất, mã sẽ chạy thành công và cho ra kết quả.

utilities for Image Properties detection

Chúc mừng!

Bạn đã thấy việc sử dụng Vision API dễ dàng như thế nào và các tiện ích nó cung cấp với chi phí rất hợp lý. Ngày nay, nhiều công ty và tổ chức đang hưởng lợi từ API này, dù là cho mục đích kinh doanh hay nghiên cứu. Trong hướng dẫn này, bạn mới chỉ chạm đến bề mặt của Vision API, nhưng đây sẽ là điểm khởi đầu tốt để bạn sử dụng các API Machine Learning cho ứng dụng của mình.

Hãy nhớ xem toàn bộ bộ API Machine Learning mà Google cung cấp, được gọi là CloudML.

Bạn có thể xây dựng nhiều ứng dụng thú vị với các API dễ gọi này. Các liên kết tới Vision API và CloudML cung cấp một bộ sưu tập hướng dẫn tuyệt vời để bạn dễ dàng thử nghiệm. Chúc bạn may mắn!

Nếu bạn quan tâm tìm hiểu thêm về Xử lý ảnh, hãy học khóa Mạng nơ-ron tích chập cho xử lý ảnh của DataCamp.

Chủ đề
Python
Trí tuệ Nhân tạo

Tìm hiểu thêm về Python

Khóa học

Mô hình hóa ảnh với Keras

4 giờ
40K
Học cách thực hiện phân tích hình ảnh bằng Keras với Python thông qua việc xây dựng, đào tạo và đánh giá các mạng nơ-ron convolutional.
Xem chi tiếtRight Arrow
Bắt Đầu Khóa Học
Xem thêmRight Arrow
Liên quan

blog

Claude Opus 4.6: Tính năng, Điểm chuẩn, Bài kiểm tra thực hành và hơn thế nữa

Mô hình mới nhất của Anthropic dẫn đầu ở mã hóa tác tử và lập luận phức tạp. Thêm vào đó, nó có cửa sổ ngữ cảnh 1M.
Matt Crabtree's photo

Matt Crabtree

10 phút

Xem ThêmXem Thêm