
Aspose.OCR Cloud cho phép bạn thực hiện Nhận dạng ký tự quang học và quét tài liệu trên Cloud. Nó hỗ trợ đọc và nhận dạng văn bản từ hầu hết các định dạng hình ảnh raster được sử dụng phổ biến nhất (BMP, JPG, GIF, PNG, TIFF).Thực hiện nhận dạng ký tự trên hình ảnh có ít dòng mã hơn. Chỉ cần truyền một hình ảnh cụ thể đến API Aspose.OCR Cloud và sẽ trả về phản hồi với văn bản được nhận dạng. API có khả năng nhận dạng văn bản tiếng Anh, tiếng Pháp, tiếng Tây Ban Nha và trả về phản hồi ở định dạng XML hoặc JSON. Trong bài viết này, chúng ta sẽ thảo luận về các bước thực hiện OCR trên hình ảnh bằng Java SDK.
Trong quá trình nhận dạng, bạn có thể đọc các ký tự cũng như thông tin phông chữ liên quan. Bạn có thể thực hiện OCR trên toàn bộ hình ảnh hoặc cung cấp tọa độ X và Y để thực hiện trên một phần cụ thể của hình ảnh raster. Nó cũng có khả năng thực hiện hiệu chỉnh độ lệch tự động, cùng với các hoạt động phát hiện bố cục tài liệu tự động và thủ công ở tốc độ cao, vì nó không phụ thuộc vào tài nguyên phần cứng.
Nền tảng độc lập
Cloud API hoàn toàn độc lập với hệ điều hành, hệ thống cơ sở dữ liệu hoặc ngôn ngữ phát triển của bạn và bạn có thể sử dụng bất kỳ ngôn ngữ và nền tảng nào hỗ trợ HTTP để tương tác với API của chúng tôi. Tuy nhiên, việc viết mã máy khách theo cách thủ công có thể khó khăn, dễ xảy ra lỗi và tốn thời gian. Do đó, để tạo điều kiện thuận lợi cho khách hàng của chúng tôi sử dụng ngôn ngữ Java, một Aspose.OCR Cloud Java SDK dành riêng cho ngôn ngữ đã được phát hành. Khi sử dụng SDK, nó sẽ xử lý rất nhiều chi tiết cấp thấp trong khi thực hiện các yêu cầu và xử lý phản hồi và cho phép bạn tập trung vào việc viết mã cụ thể cho nhu cầu dự án cụ thể của mình.
Nhận dạng văn bản từ hình ảnh URL
Cloud OCR API cung cấp tùy chọn thực hiện trực tiếp các hoạt động nhận dạng văn bản trên các tệp hình ảnh có sẵn qua URL web. Bạn không cần phải tải riêng lên bộ nhớ đám mây cụ thể.
Đoạn mã Java
private static OcrApi api;
private static final String url = "https://upload.wikimedia.org/wikipedia/commons/2/2f/Book_of_Abraham_FirstPage.png";
public static void main(String args[]) throws IOException {
try {
setUpConfig();
} catch (Exception e) {
// TODO Khối catch tự động tạo
e.printStackTrace();
}
String text;
text = recognizeByURL();
System.out.println(text);
}
// phương pháp nhận dạng văn bản từ hình ảnh được lưu trữ trên URL
private static String recognizeByURL() {
try {
api = new ApiClient().createService(OcrApi.class);
Call<ResponseBody> call = api.RecognizeFromUrl(url);
Response<ResponseBody> res = call.execute();
ResponseBody answer = res.body();
com.aspose.ocr.OCRResponse ocrResponse = com.aspose.ocr.OCRResponse.Deserialize(answer);
String text = ocrResponse.text;
return text;
} catch (IOException e) {
e.printStackTrace();
return "";
}
}
private static void setUpConfig() throws Exception {
Configuration.setAPP_SID("xxxxx");
Configuration.setAPI_KEY("xxxxx");
Configuration.setAuthPath("https://api.aspose.cloud/connect/token");
Configuration.setBasePath("https://api.aspose.cloud/v3.0");
Configuration.setUserAgent("WebKit");
Configuration.setTestSrcDir("sourceTest");
Configuration.setTestDstDir("destTest");
if (Configuration.getAPI_KEY().isEmpty() || Configuration.getAPP_SID().isEmpty()) {
System.out.println("! Error: Setup AppSID & AppKey in BaseTest Configuration");
throw new Exception("Setup AppSID & AppKey in BaseTest Configuration");
}
}
Nhận dạng văn bản từ hình ảnh trong bộ nhớ
Đoạn mã Java
private static OcrApi api;
public static void main(String args[]) throws IOException {
try {
setUpConfig();
} catch (Exception e) {
// TODO Khối catch tự động tạo
e.printStackTrace();
}
String text;
text = recognizeByContent();
System.out.println(text);
}
private static String recognizeByContent() {
try {
File f = new File(Configuration.getTestSrcDir(), "0.png");
if (!f.exists()) {
return "Error: recognizeByContentLang: file not found";
}
api = new ApiClient().createService(OcrApi.class);
RequestBody requestBody = RequestBody.create(f,MediaType.parse("application/octet-stream"));
Call<ResponseBody> call = api.RecognizeFromContent(requestBody);
Response<ResponseBody> res = call.execute();
ResponseBody answer = res.body();
com.aspose.ocr.OCRResponse ocrResponse = com.aspose.ocr.OCRResponse.Deserialize(answer);
String text = ocrResponse.text;
return text;
} catch (IOException e) {
e.printStackTrace();
return "";
}
}
private static void setUpConfig() throws Exception {
Configuration.setAPP_SID("xxxxx");
Configuration.setAPI_KEY("xxxxx");
Configuration.setAuthPath("https://api.aspose.cloud/connect/token");
Configuration.setBasePath("https://api.aspose.cloud/v3.0");
Configuration.setUserAgent("WebKit");
Configuration.setTestSrcDir("sourceTest");
Configuration.setTestDstDir("destTest");
if (Configuration.getAPI_KEY().isEmpty() || Configuration.getAPP_SID().isEmpty()) {
System.out.println("! Error: Setup AppSID & AppKey in BaseTest Configuration");
throw new Exception("Setup AppSID & AppKey in BaseTest Configuration");
}
}
lệnh cURL
Cloud API cũng có thể được truy cập thông qua lệnh cURL và tương tự, Aspose.OCR Cloud cũng có thể được truy cập thông qua lệnh cURL. Tuy nhiên, xin lưu ý rằng để truy cập API, chúng ta cần tạo mã thông báo truy cập JWT dựa trên thông tin xác thực của khách hàng được cá nhân hóa của chúng ta. Vui lòng thực hiện lệnh sau để tạo mã thông báo truy cập JWT.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Sau khi mã thông báo JWT được tạo, vui lòng sử dụng lệnh sau để thực hiện OCR trên hình ảnh.
curl "https://api.aspose.cloud/v3.0/ocr/MyImage.png/recognize?language=1" \
-X GET \
-H "accept: application/json" \
-H "authorization: Bearer <jwt token>"
Yêu cầu URL
https://api.aspose.cloud/v3.0/ocr/MyImage.png/recognize?language=1
Nội dung phản hồi
{
"text": "MOORE STEPHENS",
"code": 200
}
Phần kết luận
Trong bài viết này, chúng tôi đã thảo luận chi tiết về cách thực hiện OCR trên hình ảnh. Ngoài ra, chúng tôi đã khám phá các tùy chọn để thực hiện các hoạt động Nhận dạng ký tự quang học trên hình ảnh bằng lệnh cURL. Xin lưu ý rằng mã nguồn đầy đủ của SDK có sẵn trên GitHub. Tương tự như vậy, chúng tôi cũng khuyên bạn nên tìm hiểu thêm về API bằng cách khám phá sản phẩm Tài liệu.