Optical Character Recognition (OCR) คือกระบวนการแยกข้อความออกจากรูปภาพ คุณอาจมีรูปภาพออนไลน์และออฟไลน์ซึ่งคุณอาจต้องแยกข้อมูลข้อความ คุณสามารถดำเนินการ OCR กับรูปภาพออฟไลน์ได้ แต่คุณอาจคิดว่าหากต้องการใช้ OCR บนรูปภาพออนไลน์ คุณจะต้องดาวน์โหลด นั่นไม่จำเป็น ในบทความนี้ คุณจะได้เรียนรู้วิธีการทำ OCR บนรูปภาพโดยใช้ URL ด้วย C++
- C ++ API สำหรับดำเนินการ OCR บนรูปภาพจาก URL
- จดจำข้อความโดยดำเนินการ OCR บนรูปภาพจาก URL โดยใช้ C++
- จดจำข้อความจากพื้นที่ภาพที่เลือกโดยกำหนดพื้นที่การรับรู้โดยใช้ C++
C ++ API สำหรับดำเนินการ OCR บนรูปภาพจาก URL
Aspose.OCR for C++ เป็น API การรู้จำอักขระด้วยแสงที่สามารถดำเนินการ OCR กับรูปภาพและเอกสารที่สแกนได้อย่างน่าเชื่อถือ API ยังช่วยให้คุณสามารถดำเนินการ OCR กับรูปภาพจาก URL คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด
PM> Install-Package Aspose.OCR.Cpp
จดจำข้อความโดยดำเนินการ OCR บนรูปภาพจาก URL โดยใช้ C++
ต่อไปนี้เป็นขั้นตอนในการดำเนินการ OCR กับรูปภาพจาก URL
- เตรียมบัฟเฟอร์สำหรับผลลัพธ์
- ตั้งค่า การตั้งค่าการจดจำ
- ทำ OCR บนภาพโดยใช้เมธอด asposeocrpagefromuri (const char \ uri, wchart \ buffer, sizet buffersize, RecognitionSettings)
โค้ดตัวอย่างต่อไปนี้แสดงวิธีการทำ OCR บนรูปภาพจาก URL โดยใช้ C++
#include <fcntl.h>
#ifdef _WIN32
#include <corecrt_io.h>
#endif
int main()
{
#ifdef _WIN32
_setmode(_fileno(stdout), _O_U16TEXT);
#else
setlocale(LC_CTYPE, "");
#endif
// URL ไฟล์ต้นฉบับ
const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// เตรียมบัฟเฟอร์สำหรับผลลัพธ์ (ในสัญลักษณ์ len_byte = len * sizeof(wchar_t))
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// ตั้งค่าการจดจำ
RecognitionSettings settings;
settings.format = export_format::text;
// ดำเนินการ OCR บนภาพ
size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);
std::wcout << buffer << L"\n";
}
จดจำข้อความจากพื้นที่ภาพที่เลือกโดยกำหนดพื้นที่การรับรู้โดยใช้ C++
หากคุณไม่ต้องการดำเนินการ OCR กับภาพทั้งหมดและต้องการรับผลลัพธ์จากพื้นที่ภาพเฉพาะ คุณสามารถกำหนดพื้นที่การรับรู้เพื่อทำสิ่งนั้นได้ ต่อไปนี้เป็นขั้นตอนในการตั้งค่าพื้นที่การรับรู้สำหรับการดำเนินการ OCR
- กำหนดพื้นที่การรับรู้ในอาร์เรย์ของโครงสร้าง rect
- เตรียมบัฟเฟอร์สำหรับผลลัพธ์
- ตั้งค่าของสมาชิกโครงสร้าง RecognitionSettings.rectangles ให้เท่ากับอาร์เรย์ของพื้นที่การรู้จำที่กำหนดไว้ก่อนหน้านี้
- ตั้งค่าของสมาชิกโครงสร้าง RecognitionSettings.rectanglessize ให้เท่ากับขนาดของอาร์เรย์พื้นที่การรับรู้
- ทำ OCR บนภาพโดยใช้เมธอด asposeocrpagefromuri (const char \ uri, wchart \ buffer, sizet buffersize, RecognitionSettings)
โค้ดตัวอย่างต่อไปนี้สาธิตวิธีใช้พื้นที่การรับรู้เพื่อจดจำข้อความจากพื้นที่เฉพาะของรูปภาพโดยใช้ C++
#include <fcntl.h>
#ifdef _WIN32
#include <corecrt_io.h>
#endif
int main()
{
#ifdef _WIN32
_setmode(_fileno(stdout), _O_U16TEXT);
#else
setlocale(LC_CTYPE, "");
#endif
// URL ไฟล์ต้นฉบับ
const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// กำหนดพื้นที่การรับรู้
rect rectangles[2] = { {90, 180, 770, 333} , { 923, 613, 780, 96 } };
// เตรียมบัฟเฟอร์สำหรับผลลัพธ์ (ในสัญลักษณ์ len_byte = len * sizeof(wchar_t))
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// ตั้งค่าการจดจำ
RecognitionSettings settings;
settings.format = export_format::text;
// ตั้งค่าพื้นที่การรับรู้
settings.rectangles = rectangles;
// ระบุขนาดของอาร์เรย์พื้นที่การรับรู้
settings.rectangles_size = 2;
// ดำเนินการ OCR บนภาพ
size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);
std::wcout << buffer << L"\n";
}
รับใบอนุญาตฟรี
หากต้องการลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน คุณสามารถขอ ใบอนุญาตชั่วคราวฟรี
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีดำเนินการ OCR กับรูปภาพจากที่อยู่ URL ใดๆ โดยใช้ C++ นอกจากนี้ คุณได้เห็นวิธีกำหนดพื้นที่การรับรู้เพื่อดำเนินการ OCR เฉพาะพื้นที่ที่เลือกของภาพ Aspose.OCR for C++ เป็น API ที่มีประสิทธิภาพซึ่งมีคุณสมบัติเพิ่มเติมมากมายสำหรับการดำเนินการ OCR บนรูปภาพ คุณสามารถสำรวจ API โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี