<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Açık Kaynak OCR API on File Format Blog</title>
    <link>https://blog.fileformat.com/tr/tag/a%C3%A7%C4%B1k-kaynak-ocr-api/</link>
    <description>Recent content in Açık Kaynak OCR API on File Format Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>tr</language>
    <lastBuildDate>Fri, 23 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.fileformat.com/tr/tag/a%C3%A7%C4%B1k-kaynak-ocr-api/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Open-Source OCR API&#39;lerini Karşılaştırın: Hangi Araç En İyi Çıktı Kalitesini Sunuyor?</title>
      <link>https://blog.fileformat.com/tr/ocr/comparing-open-source-ocr-apis-based-on-output-quality/</link>
      <pubDate>Fri, 23 Oct 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.fileformat.com/tr/ocr/comparing-open-source-ocr-apis-based-on-output-quality/</guid>
      <description>En iyi açık kaynak OCR araçlarını—Tesseract, PaddleOCR, EasyOCR ve Surya—karşılaştırıyoruz; düz metin, hOCR, ALTO XML, JSON ve Markdown formatlarındaki çıktıları değerlendiriyoruz.</description>
      <content:encoded><![CDATA[<p><strong>Son Güncelleme</strong>: 20 Aug, 2026</p>
<figure class="align-center ">
    <img loading="lazy" src="images/comparing-open-source-ocr-apis-based-on-output-quality.png#center"
         alt="Compare Open-Source OCR APIs: Which Tool Offers the Best Output Quality?"/> 
</figure>

<h2 id="açık-kaynak-ocr-apilerini-çıktı-formatı-kalitesine-göre-karşılaştırma">Açık Kaynak OCR API&rsquo;lerini Çıktı Formatı Kalitesine Göre Karşılaştırma</h2>
<p>Mühendisler Optik Karakter Tanıma (OCR) motorlarını değerlendirirken, karakter hata oranı (CER) ve kelime hata oranı (WER) genellikle ölçütlerin çoğunu oluşturur. Tanıma doğruluğu önemli olsa da, üretimde sorunun sadece yarısını çözer.</p>
<p>Karmaşık çok sütunlu PDF&rsquo;leri ayrıştırıyorsanız, makbuzlardan satır öğelerini çıkarıyorsanız veya teknik raporları bir LLM gömme hattına alıyorsanız, ham metin dökümleri büyük mühendislik yükü oluşturur. Düzen farkındalığı, mantıksal okuma sırası veya koordinat verisi olmayan bir karakter dizisi, ekibinizi kırılgan sezgisel ayrıştırıcılar yazmaya zorlar.</p>
<p>Modern belge iş akışları için gerçek ayırıcı <strong>çıktı formatı kalitesi</strong>&lsquo;dir: bir motorun koordinatları, okuma sırasını, yapısal hiyerarşiyi ve tablo verilerini ne kadar tutarlı ve temiz bir şekilde sunduğu.</p>
<p>Aşağıda, dört önde gelen <a href="https://products.fileformat.com/ocr/">açık kaynak OCR</a> motorunun—<strong>Tesseract</strong>, <strong>PaddleOCR</strong>, <strong>EasyOCR</strong> ve <strong>Surya OCR</strong>—mühendislik odaklı bir karşılaştırması yer alıyor; çıktılarının otomatik hatlar içinde nasıl davrandığı değerlendiriliyor.</p>
<h2 id="ortak-çıktı-formatları-mühendislerin-gerçekten-ihtiyacı-olanlar">Ortak Çıktı Formatları: Mühendislerin Gerçekten İhtiyacı Olanlar</h2>
<p>Her OCR API&rsquo;si algılanan metni farklı paketler. Bu formatları anlamak, boru hattınızın ne kadar son işlem gerektirdiğini belirlemenize yardımcı olur:</p>
<ul>
<li><strong>Düz Metin (<code>.txt</code>):</strong> En basit temsil. Tüm konumsal meta verileri kaldırır ve çok sütunlu düzenleri yatay okumalara çevirir, bu da paragrafları karıştırabilir.</li>
<li><strong>Arşiv Standartları (<code>hOCR</code>, <code>ALTO XML</code>):</strong> Kütüphane arşivlemesinde standart olan XML/HTML tabanlı formatlar. Koordinatları, yazı tipi tahminlerini ve güven puanlarını DOM düğümlerine gömerler. Belge yeniden yapılandırma için son derece sağlam, ancak mikro hizmetler için hantal.</li>
<li><strong>Yapılandırılmış JSON:</strong> Modern web arka uçları için varsayılan seçim. Koordinat dizileri (sınırlayıcı kutular veya çokgenler), güven puanları ve hiyerarşik blok/ satır/ kelime yapıları sağlar.</li>
<li><strong>Markdown (<code>.md</code>) / HTML Tabloları:</strong> Retrieval-Augmented Generation (RAG) için modern standart. Semantik bölümleri (başlıklar, listeler, kalın metin) ve tablo matrislerini, aşağı akışta mekansal yeniden yapılandırma gerektirmeden korur.</li>
</ul>
<h2 id="1-tesseract-ocr17">1. <a href="https://products.fileformat.com/ocr/net/tesseract/">Tesseract OCR</a></h2>
<p>Google tarafından sürdürülen Tesseract, açık kaynak OCR&rsquo;nin temel iş gücü olmaya devam ediyor. Mimarisi, LSTM tabanlı bir karakter motoru ile desteklenen geleneksel sayfa segmentasyon algoritmalarına büyük ölçüde dayanır.</p>
<h3 id="yerel-çıktı-formatları">Yerel Çıktı Formatları</h3>
<ul>
<li><strong>Birincil Çıktılar:</strong> Düz metin, hOCR (HTML), ALTO XML, TSV (Sekme Ayrılmış Değerler) ve aranabilir PDF/A.</li>
<li><strong>Düzen Farkındalığı:</strong> Kural tabanlı sezgisel yöntemler Sayfa Bölütleme Modları (PSM) aracılığıyla.</li>
</ul>
<h3 id="çıktı-formatı-analizi">Çıktı Formatı Analizi</h3>
<ul>
<li><strong>Nerede Üstünlük Sağlar:</strong> Tesseract&rsquo;in <code>TSV</code> ve <code>hOCR</code> dışa aktarımları standartlaştırılmış ve öngörülebilir. Tek bir TSV dışa aktarımı, <code>level</code>, <code>page_num</code>, <code>block_num</code>, <code>par_num</code>, <code>line_num</code>, <code>word_num</code>, <code>left</code>, <code>top</code>, <code>width</code>, <code>height</code> ve <code>conf</code> için yapılandırılmış sütunlar döndürür. Kağıt arşivlerini aranabilir PDF&rsquo;lere dönüştürüyorsanız ya da kurumsal standartlara sıkı uyum gerektiriyorsa, Tesseract bunu özel bağlayıcı kodu olmadan yerel olarak yönetir.</li>
<li><strong>Nerede Eksik Kalır:</strong> Tesseract&rsquo;in yerel bir JSON API&rsquo;si yoktur. Çıktısını Python veya Node.js&rsquo;te kullanmak, XML/TSV dosyalarını ayrıştırmayı veya <code>pytesseract</code> gibi sarmalayıcıları kullanmayı gerektirir. Düzen motoru ayrıca standart dışı sütun akışıyla mücadele eder, manuel sınırlama kırpma işlemleri sağlanmadıkça yan yana sütunlardan gelen metinleri sık sık karıştırır.</li>
</ul>
<pre tabindex="0"><code>Tesseract Output Profile:
├── Plain Text: Clean for standard single-column pages
├── XML / hOCR: First-class, rock-solid support
├── JSON: Requires custom wrappers or TSV-to-JSON transforms
└── Markdown / Tables: Poor (requires custom reconstruction)
</code></pre><h2 id="2-paddleocr18">2. <a href="https://products.fileformat.com/ocr/python/paddleocr/">PaddleOCR</a></h2>
<p>Baidu&rsquo;nun PaddlePaddle çerçevesi tarafından desteklenen PaddleOCR, hafif modelleri, kapsamlı çok‑dilli desteği ve özel belge analiz araç takımı (<strong>PP-Structure</strong>) sayesinde geniş çapta benimsenmiştir.</p>
<h3 id="yerel-çıktı-formatları-1">Yerel Çıktı Formatları</h3>
<ul>
<li><strong>Ana Çıktılar:</strong> Python listeleri/sözlükleri, ham JSON, görselleştirme katmanları ve PP-Structure aracılığıyla yapılandırılmış HTML.</li>
<li><strong>Düzen Farkındalığı:</strong> Yüksek (düzen ayrıştırması, yön sınıflandırması ve tablo kurtarma için derin öğrenme modelleri kullanılarak).</li>
</ul>
<h3 id="çıktı-formatı-analizi-1">Çıktı Formatı Analizi</h3>
<ul>
<li><strong>Nerede Üstün Performans Gösterir:</strong> Standart PaddleOCR, metin dizgileri ve güven skorlarıyla birlikte 4 noktalı çokgen koordinatlarını (<code>[[x1, y1], [x2, y2], [x3, y3], [x4, y4]]</code>) döndürür. Bu, eğik veya eğrileşmiş metinleri sorunsuz bir şekilde işler. Ancak, gerçek gücü <strong>PP-Structure</strong> paketinde yatmaktadır; bu paket, düzen bölgelerini (başlık, metin, tablo, şekil) algılar ve tabloları doğrudan geçerli HTML dizgilerine (<code>&lt;table&gt;...&lt;/table&gt;</code>) ayrıştırır. Bu, sınırlayıcı kutulardan hücre kapsamlarını manuel olarak hesaplama ihtiyacını ortadan kaldırır.</li>
<li><strong>Nerede Eksik Kalır:</strong> Temel API, farklı sürümlerde standart özellik anahtarlarından yoksun iç içe diziler döndürür. Yapılandırılmış uygulamalar için geliştiriciler genellikle alan adlarını (<code>bbox</code>, <code>text</code>, <code>confidence</code>) standartlaştıran bir ara adaptör yazarlar.</li>
</ul>
<pre tabindex="0"><code>PaddleOCR Output Profile:
├── Plain Text: Clean across multiple orientations
├── XML / hOCR: Limited (JSON is the preferred interchange format)
├── JSON: Highly detailed with 4-point polygons
└── Markdown / Tables: Excellent (direct HTML table generation via PP-Structure)
</code></pre><h2 id="3-easyocr19">3. <a href="https://products.fileformat.com/ocr/python/easyocr/">EasyOCR</a></h2>
<p>JaidedAI tarafından PyTorch üzerine inşa edilen EasyOCR, hızlı geliştirici benimsemesi için tasarlanmıştır. CRAFT (Character Region Awareness for Text Detection) ve derin öğrenme tanıma ağlarını minimal bir API içinde paketler.</p>
<h3 id="yerel-çıktı-formatları-2">Yerel Çıktı Formatları</h3>
<ul>
<li><strong>Ana Çıktılar:</strong> Koordinat çiftleri, tanınan dizeler ve güven değerleri içeren Python listeleri.</li>
<li><strong>Düzen Farkındalığı:</strong> Düşük ila orta (yalnızca metin satırı algılama; belge düzeyinde yapısal ayrıştırma yok).</li>
</ul>
<h3 id="çıktı-formatı-analizi-2">Çıktı Formatı Analizi</h3>
<ul>
<li><strong>Nerede Üstün:</strong> Dönüş nesnesinin basitliği eşsizdir:
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-python" data-lang="python"><span style="display:flex;"><span>[
</span></span><span style="display:flex;"><span>    (
</span></span><span style="display:flex;"><span>        [[x1, y1], [x2, y2], [x3, y3], [x4, y4]],
</span></span><span style="display:flex;"><span>        <span style="color:#e6db74">&#34;Total Balance Due&#34;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#ae81ff">0.9842</span>,
</span></span><span style="display:flex;"><span>    )
</span></span><span style="display:flex;"><span>]
</span></span></code></pre></div></li>
</ul>
<p>Bu çıktıyı standart bir REST yanıtına eşlemek ya da doğrudan GeoJSON/özel şemalara serileştirmek sadece birkaç satır kod gerektirir. Doğal sahne metinleri, plaka ve izole belge kırpımları üzerinde güvenilir bir şekilde çalışır.</p>
<ul>
<li><strong>Nerede Eksik:</strong> EasyOCR bütünsel belge düzeni analizini gerçekleştirmez. Tabloları, başlık hiyerarşilerini veya karmaşık sütunlar arasındaki okuma sıralarını tanımlamaz. EasyOCR&rsquo;ı iki sütunlu bir akademik makalede kullanmak, üst akışta bir düzen algılama modeli (örneğin YOLO veya LayoutLM) ile eşleştirilmediği sürece, sık sık iç içe geçmiş metin parçacıkları üretir.</li>
</ul>
<pre tabindex="0"><code>EasyOCR Output Profile:
├── Plain Text: Good for isolated text blocks
├── XML / hOCR: Not supported natively
├── JSON: Trivial to generate from Python tuples
└── Markdown / Tables: None (requires external layout pipelines)
</code></pre><h2 id="4-surya-ocr">4. Surya OCR</h2>
<p><a href="https://github.com/datalab-to/surya">Surya</a> modern bir derin öğrenme OCR çerçevesidir ve özellikle karmaşık belge anlama ve LLM veri alım hatları için tasarlanmıştır.</p>
<h3 id="yerel-çıktı-formatları-3">Yerel Çıktı Formatları</h3>
<ul>
<li><strong>Ana Çıktılar:</strong> Pydantic-modeli JSON yapıları, mantıksal okuma sırası indeksleri, düzen sınırlama bölgeleri ve satır algılama çokgenleri.</li>
<li><strong>Layout Awareness:</strong> Son derece yüksek (derin öğrenmeye dayalı düzen analizi ve okuma sırası sıralaması).</li>
</ul>
<h3 id="çıktı-formatı-analizi-3">Çıktı Formatı Analizi</h3>
<ul>
<li><strong>Where It Excels:</strong> Surya, modern AI mühendisliğinin zorluklarını doğrudan ele alır. Belgelerin üstten alta, soldan sağa okunduğu varsayımının yerine, Surya <strong>okuma sırasını</strong> tahmin etmek için özel bir model kullanır. Satırları mantıksal anlamsal bloklara gruplar, çok sütunlu genişlemeleri doğal olarak yönetir ve Pydantic aracılığıyla tiplenmiş yapılar üretir. Bu, vektör veritabanlarına ve Markdown dönüştürücülere sonraki aşama veri alımını doğrudan ve güvenilir kılar.</li>
<li><strong>Where It Falls Short:</strong> Daha yeni ve daha ağır bir PyTorch tabanlı çerçeve olarak, Surya, Tesseract gibi optimize edilmiş C++ motorları veya kuantize edilmiş Paddle modelleri gibi yüksek verimliliği eşleştirmek için özel GPU hesaplaması gerektirir. hOCR veya ALTO gibi eski arşiv standartlarını hedef almaz.</li>
</ul>
<pre tabindex="0"><code>Surya Output Profile:
├── Plain Text: Naturally ordered according to human reading flow
├── XML / hOCR: Not supported
├── JSON: Fully typed, modern Pydantic schemas
└── Markdown / Tables: Clean semantic blocks ideal for Markdown synthesis
</code></pre><h2 id="yüz-yüze-karşılaştırma-matrisi">Yüz Yüze Karşılaştırma Matrisi</h2>
<table>
<thead>
<tr>
<th style="text-align:left">Yetenek / Biçim</th>
<th style="text-align:left">Tesseract OCR</th>
<th style="text-align:left">PaddleOCR (PP-Structure)</th>
<th style="text-align:left">EasyOCR</th>
<th style="text-align:left">Surya OCR</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left"><strong>Yerel hOCR / ALTO XML</strong></td>
<td style="text-align:left"><strong>Yerel destek</strong></td>
<td style="text-align:left">Yalnızca üçüncü taraf</td>
<td style="text-align:left">Yok</td>
<td style="text-align:left">Yok</td>
</tr>
<tr>
<td style="text-align:left"><strong>Sınır Kutusu Geometrisi</strong></td>
<td style="text-align:left">Eksen hizalı (<code>x, y, w, h</code>)</td>
<td style="text-align:left">4 noktalı çokgen</td>
<td style="text-align:left">4 noktalı çokgen</td>
<td style="text-align:left">Poligon + Düzen blokları</td>
</tr>
<tr>
<td style="text-align:left"><strong>Tablo Ayrıştırma</strong></td>
<td style="text-align:left">Yalnızca Koordinat TSV</td>
<td style="text-align:left"><strong>HTML tablo dizgileri</strong></td>
<td style="text-align:left">Yok</td>
<td style="text-align:left">Hücre koordinat ızgaraları</td>
</tr>
<tr>
<td style="text-align:left"><strong>Okuma Sırası Algılama</strong></td>
<td style="text-align:left">Kural tabanlı (çok sütunlu kırılır)</td>
<td style="text-align:left">ML düzen analizi</td>
<td style="text-align:left">Temel satır gruplama</td>
<td style="text-align:left"><strong>Özel okuma sırası modeli</strong></td>
</tr>
<tr>
<td style="text-align:left"><strong>Doğrudan JSON Şemaları</strong></td>
<td style="text-align:left">Dönüştürme gerektirir</td>
<td style="text-align:left">Python Sözlüğü / JSON</td>
<td style="text-align:left">Python Listesi / JSON</td>
<td style="text-align:left"><strong>Tiplenmiş Pydantic Modelleri</strong></td>
</tr>
<tr>
<td style="text-align:left"><strong>İdeal Aşağı Akış Hedefi</strong></td>
<td style="text-align:left">Arşiv PDF&rsquo;leri, Eski DMS</td>
<td style="text-align:left">Form/Fiş Verileri, ERP&rsquo;ler</td>
<td style="text-align:left">Hızlı Betikler, Sahne Metni</td>
<td style="text-align:left">LLM Alımı, RAG Mimarileri</td>
</tr>
</tbody>
</table>
<h2 id="iş-akışı-önerileri-hangisini-seçmelisiniz">İş Akışı Önerileri: Hangisini Seçmelisiniz?</h2>
<ul>
<li><strong>Tesseract&rsquo;ı Seçin</strong> eğer uyumluluk gereksinimleriniz hükümet veya arşiv kayıtları için standartlaştırılmış <code>hOCR</code>, <code>ALTO XML</code> veya aranabilir PDF/A teslimatları talep ediyorsa.</li>
<li><strong>PaddleOCR&rsquo;ı Seçin</strong> eğer operasyonel finansal belgeleri (faturalar, fişler, vergi formları) işliyorsanız ve karmaşık, kenarsız tabloları HTML veya elektronik tablolara dönüştürmeniz gerekiyorsa.</li>
<li><strong>EasyOCR&rsquo;ı Seçin</strong> eğer doğal görüntüler, sokak işaretleri veya kırpılmış UI öğelerinden metin algılamak ve çıkarmak için hafif, Pythonik bir kütüphaneye, konfigürasyon zahmeti olmadan ihtiyacınız varsa.</li>
<li><strong>Surya OCR&rsquo;ı Seçin</strong> eğer yapılandırılmamış iş raporları, araştırma makaleleri ve teknik kılavuzları, mantıksal okuma sırası ve temiz yapısal sınırların hayati olduğu bir LLM veya vektör arama motoruna besliyorsanız.</li>
</ul>
<h1 id="sıkça-sorulan-sorular-sss">Sıkça Sorulan Sorular (SSS)</h1>
<h3 id="1-hangi-açık-kaynaklı-ocr-çıktı-formatı-büyük-dil-modellerine-beslemek-için-en-kolaydır">1. Hangi açık kaynaklı OCR çıktı formatı, Büyük Dil Modellerine beslemek için en kolaydır?</h3>
<p>Surya OCR&rsquo;un okuma sırasına duyarlı JSON&rsquo;u ve PaddleOCR PP-Structure&rsquo;ın HTML tabloları, LLM istem bağlamları ve RAG indekslemesi için en temiz temsilleri sağlar.</p>
<h3 id="2-tesseract-üçüncü-taraf-araçlar-olmadan-yerel-olarak-json-yanıtları-üretebilir-mi">2. Tesseract, üçüncü taraf araçlar olmadan yerel olarak JSON yanıtları üretebilir mi?</h3>
<p>Hayır, Tesseract yerel olarak metin, TSV, PDF ve hOCR/ALTO XML çıktısı verir; JSON üretmek, TSV veya hOCR çıktısını ara bir ayrıştırıcı kullanarak dönüştürmeyi gerektirir.</p>
<h3 id="3-4-noktalı-çokgen-koordinatları-eksen-hizalı-sınırlayıcı-kutulardan-nasıl-farklıdır">3. 4 noktalı çokgen koordinatları, eksen hizalı sınırlayıcı kutulardan nasıl farklıdır?</h3>
<p>Eksen hizalı kutular, düz metin varsayımıyla <code>[x, y, width, height]</code> kullanır, 4 noktalı çokgenler ise döndürülmüş, eğik veya kıvrımlı metin satırlarını doğru bir şekilde çevrelemek için dört koordinat çifti sağlar.</p>
<h3 id="4-hangi-motor-gevşek-koordinatlar-yerine-tablo-yapılarını-doğrudan-koda-çıktılar">4. Hangi motor, gevşek koordinatlar yerine tablo yapılarını doğrudan koda çıktılar?</h3>
<p>PaddleOCR’nin PP-Structure modülü, tespit edilen tablo sınırlarını tam HTML tablo etiketlerine (<code>&lt;table&gt;</code>, <code>&lt;tr&gt;</code>, <code>&lt;td&gt;</code>) yeniden oluşturur ve özel uzamsal matematikten kaçınır.</p>
<h3 id="5-standart-easyocr-çıktısı-çok-sütunlu-bilimsel-makalelerde-neden-zorlanıyor">5. Standart EasyOCR çıktısı çok sütunlu bilimsel makalelerde neden zorlanıyor?</h3>
<p>EasyOCR, metin satırlarını küresel düzen hiyerarşisi yerine yerel yakınlığa göre tanımlar; bu, dış bir düzen motoru tarafından sınırlanmadıkça yan yana sütunlardaki metinlerin birbirine karışmasına neden olur.</p>
<h2 id="ayrıca-bakınız">Ayrıca Bakınız</h2>
<ul>
<li><a href="https://blog.fileformat.com/en/ocr/ocr-output-formats-compared-txt-pdf-pdfa-xml-and-json/">OCR Çıktı Formatları Karşılaştırması: TXT, PDF, PDF/A, XML, JSON</a></li>
<li><a href="https://blog.fileformat.com/ocr/understanding-ocr-file-formats-hocr-vs-alto-vs-pdfa-explained/">OCR Dosya Formatlarını Anlamak - HOCR vs ALTO vs PDF/A Açıklaması</a></li>
<li><a href="https://blog.fileformat.com/pdf/what-is-the-difference-between-pdf-and-fdf/">PDF ve FDF Arasındaki Fark Nedir?</a></li>
<li><a href="https://blog.fileformat.com/file-formats/pdf-vs-word-which-one-should-you-use-and-when/">PDF vs Word: Hangisini Ne Zaman Kullanmalısınız?</a></li>
<li><a href="https://docs.fileformat.com/pdf/a/">El Yazısı Metin Tanıma (HTR) için Doğru Dosya Formatını Nasıl Seçilir</a></li>
</ul>
<!-- raw HTML omitted -->
]]></content:encoded>
    </item>
    
  </channel>
</rss>
