
Aspose.OCR Cloud شما را قادر می سازد تا تشخیص کاراکترهای نوری و اسکن اسناد را در Cloud انجام دهید. از خواندن و تشخیص متن از رایجترین فرمتهای تصویر شطرنجی (BMP، JPG، GIF، PNG، TIFF پشتیبانی میکند. تشخیص کاراکتر را روی تصاویر با خطوط کد کمتر انجام دهید. به سادگی یک تصویر خاص را به Aspose.OCR Cloud API ارسال کنید و پاسخی را با متن شناسایی شده برگردانید. API قادر به تشخیص متن انگلیسی، فرانسوی، اسپانیایی است و پاسخ را در قالبهای XML یا JSON برمیگرداند. در این مقاله قصد داریم به مراحل انجام OCR روی تصاویر با استفاده از Java SDK بپردازیم.
در طی فرآیند تشخیص، می توانید کاراکترها و همچنین اطلاعات فونت مرتبط را بخوانید. میتوانید OCR را روی کل تصویر انجام دهید یا مختصات X و Y را برای اجرای آن در بخش خاصی از تصویر شطرنجی ارائه دهید. همچنین قادر است تصحیح انحراف خودکار، بهعلاوه عملیات تشخیص طرحبندی اسناد خودکار و دستی را با سرعت بالا انجام دهد، زیرا هیچ وابستگی به منابع سختافزاری ندارد.
پلتفرم مستقل
Cloud API کاملاً مستقل از سیستم عامل، سیستم پایگاه داده یا زبان توسعه شما است و می توانید از هر زبان و پلتفرمی که از HTTP پشتیبانی می کند برای تعامل با API ما استفاده کنید. با این حال، نوشتن دستی کد مشتری می تواند دشوار، مستعد خطا و زمان بر باشد. بنابراین، به منظور تسهیل مشتریان خود در استفاده از زبان جاوا، Aspose.OCR Cloud Java SDK مخصوص زبان منتشر می شود. هنگام استفاده از SDK، هنگام درخواست و رسیدگی به پاسخها، از جزئیات سطح پایین زیادی مراقبت میکند و شما را قادر میسازد تا روی نوشتن کد خاص برای نیازهای پروژه خاص خود تمرکز کنید.
تشخیص متن از تصویر URL
Cloud OCR API گزینه ای برای انجام مستقیم عملیات تشخیص متن روی فایل های تصویری موجود در URL های وب فراهم می کند. شما نیازی به آپلود انحصاری آن در فضای ذخیره سازی ابری خاص ندارید.
قطعه کد جاوا
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 بلوک catch ایجاد شده به صورت خودکار
e.printStackTrace();
}
String text;
text = recognizeByURL();
System.out.println(text);
}
// روشی برای تشخیص متن از تصویر میزبانی شده در 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");
}
}
تشخیص متن از تصویر در فضای ذخیره سازی
قطعه کد جاوا
private static OcrApi api;
public static void main(String args[]) throws IOException {
try {
setUpConfig();
} catch (Exception e) {
// TODO بلوک catch ایجاد شده به صورت خودکار
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");
}
}
دستور cURL
همچنین میتوان به Cloud API از طریق دستورات cURL دسترسی پیدا کرد و به طور مشابه، Aspose.OCR Cloud نیز از طریق دستور cURL قابل دسترسی است. با این حال، لطفاً توجه داشته باشید که برای دسترسی به APIها، باید یک نشانه دسترسی JWT بر اساس اعتبار مشتری شخصیسازی شده خود ایجاد کنیم. لطفاً دستور زیر را برای تولید توکن دسترسی 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"
هنگامی که توکن JWT تولید شد، لطفاً از دستور زیر برای انجام OCR روی تصاویر استفاده کنید.
curl "https://api.aspose.cloud/v3.0/ocr/MyImage.png/recognize?language=1" \
-X GET \
-H "accept: application/json" \
-H "authorization: Bearer <jwt token>"
درخواست URL
https://api.aspose.cloud/v3.0/ocr/MyImage.png/recognize?language=1
بدنه پاسخگویی
{
"text": "MOORE STEPHENS",
"code": 200
}
نتیجه گیری
در این مقاله به جزئیات نحوه انجام OCR روی تصاویر پرداخته ایم. همچنین، گزینههایی را برای انجام عملیات تشخیص کاراکترهای نوری روی تصاویر با استفاده از دستورات cURL بررسی کردهایم. لطفاً توجه داشته باشید که کد منبع کامل SDK در GitHub موجود است. به طور مشابه، ما همچنین توصیه می کنیم با کاوش در محصول Documentation درباره API اطلاعات بیشتری کسب کنید.