Optical Character Recognition (OCR) är processen att extrahera text från bilder. Du kan ha bilder online och offline som du kan behöva extrahera textinformation från. Du kan utföra OCR på offlinebilder, men du kanske tänker att för att utföra OCR på onlinebilder måste du ladda ner dem. Tja, det krävs inte. I den här artikeln kommer du att lära dig hur du utför OCR på bilder med deras URL med C++.
- C++ API för att utföra OCR på bilder från URL
- Känn igen text genom att utföra OCR på en bild från URL med C++
- Känn igen text från valda bildområden genom att definiera igenkänningsområden med C++
C++ API för att utföra OCR på bilder från URL
Aspose.OCR for C++ är ett API för optisk teckenigenkänning som tillförlitligt kan utföra OCR-operationer på bilder och skannade dokument. API:et låter dig också utföra OCR på bilder från webbadresser. Du kan antingen installera API:t genom NuGet eller ladda ner det direkt från avsnittet Nedladdningar.
PM> Install-Package Aspose.OCR.Cpp
Känn igen text genom att utföra OCR på en bild från URL med C++
Följande är stegen för att utföra OCR på bilder från webbadresser.
- Förbered bufferten för resultatet.
- Ställ in RecognitionSettings.
- Utför OCR på bilden med metoden asposeocrpagefromuri (const char \ uri, wchart \ buffer, sizet buffersize, RecognitionSettings settings).
Följande exempelkod visar hur man utför OCR på en bild från en URL med 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
// Källfilens url
const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// Förbered buffert för resultat (i symboler, len_byte = len * sizeof(wchar_t))
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// Ställ in igenkänningsinställningarna
RecognitionSettings settings;
settings.format = export_format::text;
// Utför OCR-operationen på bilden.
size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);
std::wcout << buffer << L"\n";
}
Känn igen text från valda bildområden genom att definiera igenkänningsområden med C++
Om du inte vill utföra OCR på hela bilden och vill få resultatet från specifika bildområden, kan du definiera igenkänningsområden för att göra just det. Följande är stegen för att ställa in igenkänningsområden för OCR-operationen.
- Definiera igenkänningsområdena i en array med rect struktur.
- Förbered bufferten för resultatet.
- Ställ in värdet för strukturelementet RecognitionSettings.rectangles lika med den tidigare definierade uppsättningen av igenkänningsområden.
- Set the value of the RecognitionSettings.rectanglessize struct member equal to the size of the recognition areas array.
- Perform OCR on the image using the asposeocrpagefromuri (const char \ uri, wchart \ buffer, sizet buffersize, RecognitionSettings settings) method.
The following sample code demonstrates how to use recognition areas to recognize text from specific areas of an image using 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
// Source file url
const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// Define the Recognition areas
rect rectangles[2] = { {90, 180, 770, 333} , { 923, 613, 780, 96 } };
// Prepare buffer for result (in symbols, len_byte = len * sizeof(wchar_t))
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// Set the recognition settings
RecognitionSettings settings;
settings.format = export_format::text;
// Set the recognition areas
settings.rectangles = rectangles;
// Specify the size of the recognition areas array
settings.rectangles_size = 2;
// Perform the OCR operation on the image.
size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);
std::wcout << buffer << L"\n";
}
Get a Free License
In order to try the API without evaluation limitations, you can request a free temporary license.
Conclusion
In this article, you have learned how to perform OCR on images from any URL address using C++. Furthermore, you have seen how to define recognition areas to perform OCR on only selected areas of the image. Aspose.OCR for C++ is a robust API that provides many additional features for performing OCR on images. You can explore the API in detail by visiting the official documentation. In case of any questions, please feel free to reach us on our free support forum.