Optik Karakter Tanıma (OCR), görüntülerden metin çıkarma işlemidir. Metin bilgilerini ayıklamanız gerekebilecek çevrimiçi ve çevrimdışı resimleriniz olabilir. Çevrimdışı görüntülerde OCR gerçekleştirebilirsiniz, ancak çevrimiçi görüntülerde OCR yapmak için onları indirmeniz gerektiğini düşünüyor olabilirsiniz. Bu gerekli değil. Bu makalede, C++ ile URL’lerini kullanarak resimlerde OCR yapmayı öğreneceksiniz.
- URL’den Görüntülerde OCR Gerçekleştirmek için C++ API
- C++ Kullanarak URL’den Bir Görüntüde OCR Gerçekleştirerek Metni Tanıma
- C++ Kullanarak Tanıma Alanlarını Tanımlayarak Seçili Görüntü Alanlarından Metni Tanıyın
URL’den Görüntülerde OCR Gerçekleştirmek için C++ API
Aspose.OCR for C++, görüntüler ve taranan belgeler üzerinde OCR işlemlerini güvenilir bir şekilde gerçekleştirebilen bir optik karakter tanıma API’sidir. API, URL’lerden alınan resimlerde OCR gerçekleştirmenize de olanak tanır. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.
PM> Install-Package Aspose.OCR.Cpp
C++ Kullanarak URL’den Bir Görüntüde OCR Gerçekleştirerek Metni Tanıma
Aşağıda, URL’lerden alınan resimlerde OCR gerçekleştirme adımları yer almaktadır.
- Sonuç için arabelleği hazırlayın.
- TanımaAyarları’nı ayarlayın.
- asposeocrpagefromuri (const char \ uri, wchart \ buffer, sizet buffersize, RecognitionSettings settings) yöntemini kullanarak görüntü üzerinde OCR gerçekleştirin.
Aşağıdaki örnek kod, C++ kullanarak bir URL’den bir görüntü üzerinde OCR’nin nasıl gerçekleştirileceğini gösterir.
#include <fcntl.h>
#ifdef _WIN32
#include <corecrt_io.h>
#endif
int main()
{
#ifdef _WIN32
_setmode(_fileno(stdout), _O_U16TEXT);
#else
setlocale(LC_CTYPE, "");
#endif
// Kaynak dosya url'si
const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// Sonuç için tampon hazırlayın (sembollerde, len_byte = len * sizeof(wchar_t))
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// Tanıma ayarlarını belirleyin
RecognitionSettings settings;
settings.format = export_format::text;
// Görüntü üzerinde OCR işlemini gerçekleştirin.
size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);
std::wcout << buffer << L"\n";
}
C++ Kullanarak Tanıma Alanlarını Tanımlayarak Seçili Görüntü Alanlarından Metni Tanıyın
Tüm görüntü üzerinde OCR yapmak istemiyorsanız ve belirli görüntü alanlarından sonuç almak istiyorsanız, tam da bunu yapmak için tanıma alanları tanımlayabilirsiniz. OCR işlemi için tanıma alanlarını ayarlama adımları aşağıda verilmiştir.
- Tanıma alanlarını bir dizi rect yapısında tanımlayın.
- Sonuç için arabelleği hazırlayın.
- RecognitionSettings.rectangles yapı üyesinin değerini, önceden tanımlanmış tanıma alanları dizisine eşit olarak ayarlayın.
- RecognitionSettings.rectanglessize yapı üyesinin değerini, tanıma alanları dizisinin boyutuna eşit olarak ayarlayın.
- asposeocrpagefromuri (const char \ uri, wchart \ buffer, sizet buffersize, RecognitionSettings settings) yöntemini kullanarak görüntü üzerinde OCR gerçekleştirin.
Aşağıdaki örnek kod, C++ kullanarak bir görüntünün belirli alanlarındaki metni tanımak için tanıma alanlarının nasıl kullanılacağını gösterir.
#include <fcntl.h>
#ifdef _WIN32
#include <corecrt_io.h>
#endif
int main()
{
#ifdef _WIN32
_setmode(_fileno(stdout), _O_U16TEXT);
#else
setlocale(LC_CTYPE, "");
#endif
// Kaynak dosya url'si
const char* uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// Tanıma alanlarını tanımlayın
rect rectangles[2] = { {90, 180, 770, 333} , { 923, 613, 780, 96 } };
// Sonuç için tampon hazırlayın (sembollerde, len_byte = len * sizeof(wchar_t))
const size_t len = 4096;
wchar_t buffer[len] = { 0 };
// Tanıma ayarlarını belirleyin
RecognitionSettings settings;
settings.format = export_format::text;
// Tanıma alanlarını ayarlayın
settings.rectangles = rectangles;
// Tanıma alanları dizisinin boyutunu belirtin
settings.rectangles_size = 2;
// Görüntü üzerinde OCR işlemini gerçekleştirin.
size_t res = asposeocr_page_from_uri(uri, buffer, len, settings);
std::wcout << buffer << L"\n";
}
Ücretsiz Lisans Alın
API’yi değerlendirme kısıtlamaları olmadan denemek için [ücretsiz bir geçici lisans] talep edebilirsiniz10.
Çözüm
Bu makalede, C++ kullanarak herhangi bir URL adresinden resimler üzerinde OCR yapmayı öğrendiniz. Ayrıca, görüntünün yalnızca seçilen alanlarında OCR gerçekleştirmek için tanıma alanlarını nasıl tanımlayacağınızı gördünüz. Aspose.OCR for C++, görüntüler üzerinde OCR gerçekleştirmek için pek çok ek özellik sağlayan sağlam bir API’dir. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak inceleyebilirsiniz. Herhangi bir sorunuz olması durumunda lütfen ücretsiz destek forumumuzda bize ulaşmaktan çekinmeyin.