Iron Tesseract C# Nasıl Kullanılır
C#'da Iron Tesseract, bir IronTesseract örneği oluşturularak, dil ve OCR ayarlarıyla yapılandırıldıktan sonra, resimlerinizi veya PDF'lerinizi içeren bir OcrInput nesnesinde Read() yöntemini çağırarak kullanılır. Bu, Tesseract 5'nin optimize edilmiş motorunu kullanarak metin içeren görüntüleri aranabilir PDF'lere dönüştürür.
IronOCR, Iron Tesseract olarak bilinen özelleştirilmiş ve optimize edilmiş Tesseract 5'i kullanmak için sezgisel bir API sağlar. Using IronOCR ve IronTesseract'yi kullanarak, metin görüntülerini ve taranmış belgeleri metne ve aranabilir PDF'lere dönüştürebilirsiniz. Kütüphane 125 uluslararası dili destekler ve barkod okuma ve bilgisayarla görü gibi gelişmiş özellikler içerir.
Hızlı Başlat: IronTesseract Yapılandırmasını C# ortamında kurma
Bu örnek, IronTesseract'yi belirli ayarlarla nasıl yapılandıracağınızı ve tek bir kod satırında OCR işlemini nasıl gerçekleştireceğinizi gösterir.
-
IronOCR aşağıdaki NuGet Paket Yöneticisi ile yükleyin
PM > Install-Package IronOcr -
Bu kod parçacığını kopyalayın ve çalıştırın.
var result = new IronOcr.IronTesseract { Language = IronOcr.OcrLanguage.English, Configuration = new IronOcr.TesseractConfiguration { ReadBarCodes = false, RenderSearchablePdf = true, WhiteListCharacters = "ABCabc123" } }.Read(new IronOcr.OcrInput("image.png")); -
Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronOCR kullanmaya başlayın
Temel OCR İş Akışı
- NuGet ile OCR Kütüphanesini Okumak için Kurun
- Utilize Custom `Tesseract 5` to perform OCR
- İşleme için görüntüler veya PDF dosyaları gibi istenen belgeleri yükleyin
- Çıkarılan metni konsola veya bir dosyaya çıkartın
- Sonucu aranabilir bir PDF olarak kaydedin
IronTesseract Örneği Nasıl Oluşturulur?
Bu kodla bir Tesseract nesnesini başlatın:
:path=/static-assets/ocr/content-code-examples/how-to/irontesseract-initialize-irontesseract.cs
using IronOcr;
IronTesseract ocr = new IronTesseract();
Imports IronOcr
Dim ocr As New IronTesseract()
Farklı diller seçerek, BarCode okuma özelliğini etkinleştirerek ve karakterleri beyaz listeye/kara listeye ekleyerek IronTesseract'nin davranışını özelleştirebilirsiniz. IronOCR, OCR işleminizi ince ayar yapmanız için kapsamlı yapılandırma seçenekleri sağlar:
:path=/static-assets/ocr/content-code-examples/how-to/irontesseract-configure-irontesseract.cs
IronTesseract ocr = new IronTesseract
{
Configuration = new TesseractConfiguration
{
ReadBarCodes = false,
RenderHocr = true,
TesseractVariables = null,
WhiteListCharacters = null,
BlackListCharacters = "`ë|^",
},
MultiThreaded = false,
Language = OcrLanguage.English,
EnableTesseractConsoleMessages = true, // False as default
};
Dim ocr As New IronTesseract With {
.Configuration = New TesseractConfiguration With {
.ReadBarCodes = False,
.RenderHocr = True,
.TesseractVariables = Nothing,
.WhiteListCharacters = Nothing,
.BlackListCharacters = "`ë|^"
},
.MultiThreaded = False,
.Language = OcrLanguage.English,
.EnableTesseractConsoleMessages = True
}
Yapılandırma tamamlandıktan sonra, OcrInput nesnelerini okumak için Tesseract işlevini kullanabilirsiniz. OcrInput sınıfı, çeşitli giriş formatlarını yüklemek için esnek yöntemler sağlar:
:path=/static-assets/ocr/content-code-examples/how-to/irontesseract-read.cs
IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.LoadImage("attachment.png");
OcrResult result = ocr.Read(input);
string text = result.Text;
Dim ocr As New IronTesseract()
Using input As New OcrInput()
input.LoadImage("attachment.png")
Dim result As OcrResult = ocr.Read(input)
Dim text As String = result.Text
End Using
Karmaşık senaryolar için, toplu işlemler için performansı önemli ölçüde artırarak, çoklu belgeleri aynı anda işlemek için çoklu iş parçacığı özelliklerinden yararlanabilirsiniz.
İleri Düzey Tesseract Yapılandırma Değişkenleri Nelerdir?
IronOcr Tesseract arayüzü, IronOcr.TesseractConfiguration Sınıfı aracılığıyla Tesseract yapılandırma değişkenlerinin kontrolünü tamamen sağlar. Bu gelişmiş ayarlar, düşük kaliteli taramaları düzeltme veya belirli belge türlerini okuma gibi belirli kullanım durumları için OCR performansını optimize etmenizi sağlar.
Tesseract Yapılandırması Kodu Nasıl Kullanılır?
:path=/static-assets/ocr/content-code-examples/how-to/irontesseract-tesseract-configuration.cs
using IronOcr;
using System;
IronTesseract Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.English;
Ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd;
// Configure Tesseract Engine
Ocr.Configuration.TesseractVariables["tessedit_parallelize"] = false;
using var input = new OcrInput();
input.LoadImage("/path/file.png");
OcrResult Result = Ocr.Read(input);
Console.WriteLine(Result.Text);
Imports IronOcr
Imports System
Private Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.English
Ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd
' Configure Tesseract Engine
Ocr.Configuration.TesseractVariables("tessedit_parallelize") = False
Dim input = New OcrInput()
input.LoadImage("/path/file.png")
Dim Result As OcrResult = Ocr.Read(input)
Console.WriteLine(Result.Text)
IronOCR farklı belge türleri için özel yapılandırma da sağlar. Pasaportları okurken veya MICR çeklerini işlerken, belirli ön işleme filtreleri ve bölge tespiti uygulayarak doğruluğu artırabilirsiniz.
Finansal belgeler için örnek yapılandırma:
// Example: Configure for financial documents
IronTesseract ocr = new IronTesseract
{
Language = OcrLanguage.English,
Configuration = new TesseractConfiguration
{
PageSegmentationMode = TesseractPageSegmentationMode.SingleBlock,
TesseractVariables = new Dictionary<string, object>
{
["tessedit_char_whitelist"] = "0123456789.$,",
["textord_heavy_nr"] = false,
["edges_max_children_per_outline"] = 10
}
}
};
// Apply preprocessing filters for better accuracy
using OcrInput input = new OcrInput();
input.LoadPdf("financial-document.pdf");
input.Deskew();
input.EnhanceResolution(300);
OcrResult result = ocr.Read(input);
// Example: Configure for financial documents
IronTesseract ocr = new IronTesseract
{
Language = OcrLanguage.English,
Configuration = new TesseractConfiguration
{
PageSegmentationMode = TesseractPageSegmentationMode.SingleBlock,
TesseractVariables = new Dictionary<string, object>
{
["tessedit_char_whitelist"] = "0123456789.$,",
["textord_heavy_nr"] = false,
["edges_max_children_per_outline"] = 10
}
}
};
// Apply preprocessing filters for better accuracy
using OcrInput input = new OcrInput();
input.LoadPdf("financial-document.pdf");
input.Deskew();
input.EnhanceResolution(300);
OcrResult result = ocr.Read(input);
Imports IronOcr
' Example: Configure for financial documents
Dim ocr As New IronTesseract With {
.Language = OcrLanguage.English,
.Configuration = New TesseractConfiguration With {
.PageSegmentationMode = TesseractPageSegmentationMode.SingleBlock,
.TesseractVariables = New Dictionary(Of String, Object) From {
{"tessedit_char_whitelist", "0123456789.$,"},
{"textord_heavy_nr", False},
{"edges_max_children_per_outline", 10}
}
}
}
' Apply preprocessing filters for better accuracy
Using input As New OcrInput()
input.LoadPdf("financial-document.pdf")
input.Deskew()
input.EnhanceResolution(300)
Dim result As OcrResult = ocr.Read(input)
End Using
Tüm Tesseract Yapılandırma Değişkenlerinin Tam Listesi Nedir?
Bunlar IronTesseract.Configuration.TesseractVariables["key"] = value; kullanılarak ayarlanabilir. Yapılandırma değişkenleri, belirli belgelerinizle optimal sonuçlar için OCR davranışını ince ayar yapmanıza olanak tanır. OCR performansını optimize etmek için ayrıntılı kılavuz için hızlı OCR yapılandırma kılavuzumuza bakın.
| Tesseract Yapılandırma Değişkeni | Varsayılan | Anlamı |
|---|---|---|
| classify_num_cp_levels | 3 | Sınıf Kesici Seviyeleri Sayısı |
| textord_debug_tabfind | 0 | Sekme bulmayı hata ayıkla |
| textord_debug_bugs | 0 | Sekme bulmadaki hatalarla ilgili çıktı açın |
| textord_testregion_left | -1 | Hata ayıklama raporlama dikdörtgeninin sol kenarı |
| textord_testregion_top | -1 | Hata ayıklama raporlama dikdörtgeninin üst kenarı |
| textord_testregion_right | 2147483647 | Hata ayıklama dikdörtgeninin sağ kenarı |
| textord_testregion_bottom | 2147483647 | Hata ayıklama dikdörtgeninin alt kenarı |
| textord_tabfind_show_partitions | 0 | Bölüm sınırlarını göster, > 1 ise bekle |
| devanagari_split_debuglevel | 0 | Bölme shiro-rekha işlemi için hata ayıklama seviyesi. |
| edges_max_children_per_outline | 10 | Bir karakter dış hatlarının içindeki maksimum çocuk sayısı |
| edges_max_children_layers | 5 | Bir karakter dış hatlarının içindeki iç içe geçmiş maksimum katmanlar |
| edges_children_per_grandchild | 10 | Dış hatları sıkma için önem oranı |
| edges_children_count_limit | 45 | Blobdaki maksimum izin verilen delik sayısı |
| edges_min_nonhole | 12 | Kutu içindeki potansiyel karakter için minimum piksel |
| edges_patharea_ratio | 40 | Max lensq/area for acceptable child outline |
| textord_fp_chop_error | 2 | Hücre kesimlerinin izin verilen maksimum bükülmesi |
| textord_tabfind_show_images | 0 | Show image blobs |
| textord_skewsmooth_offset | 4 | Düzeltme faktörü için |
| textord_skewsmooth_offset2 | 1 | Düzeltme faktörü için |
| textord_test_x | -2147483647 | coord of test pt |
| textord_test_y | -2147483647 | coord of test pt |
| textord_min_blobs_in_row | 4 | Gradyan sayılmadan önceki minimum bloblar |
| textord_spline_minblobs | 8 | Min blobs in each spline segment |
| textord_spline_medianwin | 6 | Size of window for spline segmentation |
| textord_max_blob_overlaps | 4 | Max number of blobs a big blob can overlap |
| textord_min_xheight | 10 | Min credible pixel xheight |
| textord_lms_line_trials | 12 | Number of linew fits to do |
| oldbl_holed_losscount | 10 | Max lost before fallback line used |
| pitsync_linear_version | 6 | Use new fast algorithm |
| pitsync_fake_depth | 1 | Max advance fake generation |
| textord_tabfind_show_strokewidths | 0 | Show stroke widths |
| textord_dotmatrix_gap | 3 | Max pixel gap for broken pixed pitch |
| textord_debug_block | 0 | Block to do debug on |
| textord_pitch_range | 2 | Max range test on pitch |
| textord_words_veto_power | 5 | Rows required to outvote a veto |
| equationdetect_save_bi_image | 0 | Save input bi image |
| equationdetect_save_spt_image | 0 | Save special character image |
| equationdetect_save_seed_image | 0 | Save the seed image |
| equationdetect_save_merged_image | 0 | Save the merged image |
| poly_debug | 0 | Debug old poly |
| poly_wide_objects_better | 1 | More accurate approx on wide things |
| wordrec_display_splits | 0 | Display splits |
| textord_debug_printable | 0 | Make debug windows printable |
| textord_space_size_is_variable | 0 | If true, word delimiter spaces are assumed to have variable width, even though characters have fixed pitch. |
| textord_tabfind_show_initial_partitions | 0 | Show partition bounds |
| textord_tabfind_show_reject_blobs | 0 | Show blobs rejected as noise |
| textord_tabfind_show_columns | 0 | Show column bounds |
| textord_tabfind_show_blocks | 0 | Show final block bounds |
| textord_tabfind_find_tables | 1 | run table detection |
| devanagari_split_debugimage | 0 | Whether to create a debug image for split shiro-rekha process. |
| textord_show_fixed_cuts | 0 | Draw fixed pitch cell boundaries |
| edges_use_new_outline_complexity | 0 | Use the new outline complexity module |
| edges_debug | 0 | turn on debugging for this module |
| edges_children_fix | 0 | Remove boxy parents of char-like children |
| gapmap_debug | 0 | Say which blocks have tables |
| gapmap_use_ends | 0 | Use large space at start and end of rows |
| gapmap_no_isolated_quanta | 0 | Ensure gaps not less than 2quanta wide |
| textord_heavy_nr | 0 | Vigorously remove noise |
| textord_show_initial_rows | 0 | Display row accumulation |
| textord_show_parallel_rows | 0 | Display page correlated rows |
| textord_show_expanded_rows | 0 | Display rows after expanding |
| textord_show_final_rows | 0 | Display rows after final fitting |
| textord_show_final_blobs | Display blob bounds after pre-ass | |
| textord_test_landscape | 0 | Tests refer to land/port |
| textord_parallel_baselines | 1 | Force parallel baselines |
| textord_straight_baselines | 0 | Force straight baselines |
| textord_old_baselines | 1 | |
| textord_old_xheight | 0 | Use old xheight algorithm |
| textord_fix_xheight_bug | 1 | Use spline baseline |
| textord_fix_makerow_bug | 1 | Prevent multiple baselines |
| textord_debug_xheights | 0 | Test xheight algorithms |
| textord_biased_skewcalc | 1 | Bias skew estimates with line length |
| textord_interpolating_skew | 1 | Interpolate across gaps |
| textord_new_initial_xheight | 1 | Use test xheight mechanism |
| textord_debug_blob | 0 | Print test blob information |
| textord_really_old_xheight | 0 | Use original wiseowl xheight |
| textord_oldbl_debug | 0 | Debug old baseline generation |
| textord_debug_baselines | 0 | Debug baseline generation |
| textord_oldbl_paradef | 1 | Use para default mechanism |
| textord_oldbl_split_splines | 1 | Split stepped splines |
| textord_oldbl_merge_parts | 1 | Merge suspect partitions |
| oldbl_corrfix | 1 | Improve correlation of heights |
| oldbl_xhfix | 0 | Fix bug in modes threshold for xheights |
| textord_ocropus_mode | 0 | Make baselines for ocropus |
| textord_tabfind_only_strokewidths | 0 | Only run stroke widths |
| textord_tabfind_show_initialtabs | 0 | Show tab candidates |
| textord_tabfind_show_finaltabs | 0 | Show tab vectors |
| textord_show_tables | 0 | Show table regions |
| textord_tablefind_show_mark | 0 | Debug table marking steps in detail |
| textord_tablefind_show_stats | 0 | Show page stats used in table finding |
| textord_tablefind_recognize_tables | 0 | Enables the table recognizer for table layout and filtering. |
| textord_all_prop | ||
| textord_debug_pitch_test | ||
| textord_disable_pitch_test | ||
| textord_fast_pitch_test | ||
| textord_debug_pitch_metric | ||
| textord_show_row_cuts | ||
| textord_show_page_cuts | ||
| textord_pitch_cheat | ||
| textord_blockndoc_fixed | ||
| textord_show_initial_words | ||
| textord_show_new_words | ||
| textord_show_fixed_words | ||
| textord_blocksall_fixed | ||
| textord_blocksall_prop | ||
| textord_blocksall_testing | ||
| textord_test_mode | ||
| textord_pitch_rowsimilarity | ||
| words_initial_lower | ||
| words_initial_upper | ||
| words_default_prop_nonspace | ||
| words_default_fixed_space | ||
| words_default_fixed_limit | ||
| textord_words_definite_spread | ||
| textord_spacesize_ratiofp | ||
| textord_spacesize_ratioprop | ||
| textord_fpiqr_ratio | ||
| textord_max_pitch_iqr | ||
| textord_fp_min_width | ||
| textord_underline_offset | ||
| ambigs_debug_level | ||
| classify_debug_level | ||
| classify_norm_method | ||
| matcher_debug_level | ||
| matcher_debug_flags | ||
| classify_learning_debug_level | ||
| matcher_permanent_classes_min | ||
| matcher_min_examples_for_ prototyping | ||
| matcher_sufficient_examples_ for_prototyping | ||
| classify_adapt_proto_threshold | ||
| classify_adapt_feature_threshold | ||
| classify_class_pruner_threshold | ||
| classify_class_pruner_multiplier | ||
| classify_cp_cutoff_strength | ||
| classify_integer_matcher_multiplier | ||
| dawg_debug_level | ||
| hyphen_debug_level | ||
| stopper_smallword_size | ||
| stopper_debug_level | ||
| tessedit_truncate_wordchoice_log | ||
| max_permuter_attempts | ||
| repair_unchopped_blobs | ||
| chop_debug | ||
| chop_split_length | ||
| chop_same_distance | ||
| chop_min_outline_points | ||
| chop_seam_pile_size | ||
| chop_inside_angle | ||
| chop_min_outline_area | ||
| chop_centered_maxwidth | ||
| chop_x_y_weight | ||
| wordrec_debug_level | ||
| wordrec_max_join_chunks | ||
| segsearch_debug_level | ||
| segsearch_max_pain_points | ||
| segsearch_max_futile_classifications | ||
| language_model_debug_level | ||
| language_model_ngram_order | ||
| language_model_viterbi_list_ max_num_prunable | ||
| language_model_viterbi_list_max_size | ||
| language_model_min_compound_length | ||
| wordrec_display_segmentations | ||
| tessedit_pageseg_mode | ||
| tessedit_ocr_engine_mode | ||
| pageseg_devanagari_split_strategy | ||
| ocr_devanagari_split_strategy | ||
| bidi_debug | ||
| applybox_debug | ||
| applybox_page | ||
| tessedit_bigram_debug | ||
| debug_noise_removal | ||
| noise_maxperblob | ||
| noise_maxperword | ||
| debug_x_ht_level | ||
| quality_min_initial_alphas_reqd | ||
| tessedit_tess_adaption_mode | ||
| multilang_debug_level | ||
| paragraph_debug_level | ||
| tessedit_preserve_min_wd_len | ||
| crunch_rating_max | ||
| crunch_pot_indicators | ||
| crunch_leave_lc_strings | ||
| crunch_leave_uc_strings | ||
| crunch_long_repetitions | ||
| crunch_debug | ||
| fixsp_non_noise_limit | ||
| fixsp_done_mode | ||
| debug_fix_space_level | ||
| x_ht_acceptance_tolerance | ||
| x_ht_min_change | ||
| superscript_debug | ||
| jpg_quality | ||
| user_defined_dpi | ||
| min_characters_to_try | ||
| suspect_level | ||
| suspect_short_words | ||
| tessedit_reject_mode | ||
| tessedit_image_border | ||
| min_sane_x_ht_pixels | ||
| tessedit_page_number | ||
| tessedit_parallelize | ||
| lstm_choice_mode | ||
| lstm_choice_iterations | ||
| tosp_debug_level | ||
| tosp_enough_space_samples_for_median | ||
| tosp_redo_kern_limit | ||
| tosp_few_samples | ||
| tosp_short_row | ||
| tosp_sanity_method | ||
| textord_max_noise_size | ||
| textord_baseline_debug | ||
| textord_noise_sizefraction | ||
| textord_noise_translimit | ||
| textord_noise_sncount | ||
| use_ambigs_for_adaption | ||
| prioritize_division | ||
| classify_enable_learning | ||
| tess_cn_matching | ||
| tess_bn_matching | ||
| classify_enable_adaptive_matcher | ||
| classify_use_pre_adapted_templates | ||
| classify_save_adapted_templates | ||
| classify_enable_adaptive_debugger | ||
| classify_nonlinear_norm | ||
| disable_character_fragments | ||
| classify_debug_character_fragments | ||
| matcher_debug_separate_windows | ||
| classify_bln_numeric_mode | ||
| load_system_dawg | ||
| load_freq_dawg | ||
| load_unambig_dawg | ||
| load_punc_dawg | ||
| load_number_dawg | ||
| load_bigram_dawg | ||
| use_only_first_uft8_step | ||
| stopper_no_acceptable_choices | ||
| segment_nonalphabetic_script | ||
| save_doc_words | ||
| merge_fragments_in_matrix | ||
| wordrec_enable_assoc | ||
| force_word_assoc | ||
| chop_enable | ||
| chop_vertical_creep | ||
| chop_new_seam_pile | ||
| assume_fixed_pitch_char_segment | ||
| wordrec_skip_no_truth_words | ||
| wordrec_debug_blamer | ||
| wordrec_run_blamer | ||
| save_alt_choices | ||
| language_model_ngram_on | ||
| language_model_ngram_use_
only_first_uft8_step | ||
| language_model_ngram_space_ delimited_language | ||
| language_model_use_sigmoidal_certainty | ||
| tessedit_resegment_from_boxes | ||
| tessedit_resegment_from_line_boxes | ||
| tessedit_train_from_boxes | ||
| tessedit_make_boxes_from_boxes | ||
| tessedit_train_line_recognizer | ||
| tessedit_dump_pageseg_images | ||
| tessedit_do_invert | ||
| tessedit_ambigs_training | ||
| tessedit_adaption_debug | ||
| applybox_learn_chars_and_char_frags_mode | ||
| applybox_learn_ngrams_mode | ||
| tessedit_display_outwords | ||
| tessedit_dump_choices | ||
| tessedit_timing_debug | ||
| tessedit_fix_fuzzy_spaces | ||
| tessedit_unrej_any_wd | ||
| tessedit_fix_hyphens | ||
| tessedit_enable_doc_dict | ||
| tessedit_debug_fonts | ||
| tessedit_debug_block_rejection | ||
| tessedit_enable_bigram_correction | ||
| tessedit_enable_dict_correction | ||
| enable_noise_removal | ||
| tessedit_minimal_rej_pass1 | ||
| tessedit_test_adaption | ||
| test_pt | ||
| paragraph_text_based | ||
| lstm_use_matrix | ||
| tessedit_good_quality_unrej | ||
| tessedit_use_reject_spaces | ||
| tessedit_preserve_blk_rej_perfect_wds | ||
| tessedit_preserve_row_rej_perfect_wds | ||
| tessedit_dont_blkrej_good_wds | ||
| tessedit_dont_rowrej_good_wds | ||
| tessedit_row_rej_good_docs | ||
| tessedit_reject_bad_qual_wds | ||
| tessedit_debug_doc_rejection | ||
| tessedit_debug_quality_metrics | ||
| bland_unrej | ||
| unlv_tilde_crunching | ||
| hocr_font_info | ||
| hocr_char_boxes | ||
| crunch_early_merge_tess_fails | ||
| crunch_early_convert_bad_unlv_chs | ||
| crunch_terrible_garbage | ||
| crunch_leave_ok_strings | ||
| crunch_accept_ok | ||
| crunch_leave_accept_strings | ||
| crunch_include_numerals | ||
| tessedit_prefer_joined_punct | ||
| tessedit_write_block_separators | ||
| tessedit_write_rep_codes | ||
| tessedit_write_unlv | ||
| tessedit_create_txt | ||
| tessedit_create_hocr | ||
| tessedit_create_alto | ||
| tessedit_create_lstmbox | ||
| tessedit_create_tsv | ||
| tessedit_create_wordstrbox | ||
| tessedit_create_pdf | ||
| textonly_pdf | ||
| suspect_constrain_1Il | ||
| tessedit_minimal_rejection | ||
| tessedit_zero_rejection | ||
| tessedit_word_for_word | ||
| tessedit_zero_kelvin_rejection | ||
| tessedit_rejection_debug | ||
| tessedit_flip_0O | ||
| rej_trust_doc_dawg | ||
| rej_1Il_use_dict_word | ||
| rej_1Il_trust_permuter_type | ||
| rej_use_tess_accepted | ||
| rej_use_tess_blanks | ||
| rej_use_good_perm | ||
| rej_use_sensible_wd | ||
| rej_alphas_in_number_perm | ||
| tessedit_create_boxfile | ||
| tessedit_write_images | ||
| interactive_display_mode | ||
| tessedit_override_permuter | ||
| tessedit_use_primary_params_model | ||
| textord_tabfind_show_vlines | ||
| textord_use_cjk_fp_model | ||
| poly_allow_detailed_fx | ||
| tessedit_init_config_only | ||
| textord_equation_detect | ||
| textord_tabfind_vertical_text | ||
| textord_tabfind_force_vertical_text | ||
| preserve_interword_spaces | ||
| pageseg_apply_music_mask | ||
| textord_single_height_mode | ||
| tosp_old_to_method | ||
| tosp_old_to_constrain_sp_kn | ||
| tosp_only_use_prop_rows | ||
| tosp_force_wordbreak_on_punct | ||
| tosp_use_pre_chopping | ||
| tosp_old_to_bug_fix | ||
| tosp_block_use_cert_spaces | ||
| tosp_row_use_cert_spaces | ||
| tosp_narrow_blobs_not_cert | ||
| tosp_row_use_cert_spaces1 | ||
| tosp_recovery_isolated_row_stats | ||
| tosp_only_small_gaps_for_kern | ||
| tosp_all_flips_fuzzy | ||
| tosp_fuzzy_limit_all | ||
| textord_no_rejects | ||
| textord_show_blobs | ||
| textord_show_boxes | ||
| textord_noise_rejwords | ||
| textord_noise_rejrows | ||
| textord_noise_debug | ||
| classify_learn_debug_str | ||
| user_words_file | ||
| user_words_suffix | ||
| user_patterns_file | ||
| user_patterns_suffix | ||
| output_ambig_words_file | ||
| word_to_debug | ||
| tessedit_char_blacklist | ||
| tessedit_char_whitelist | ||
| tessedit_char_unblacklist | ||
| tessedit_write_params_to_file | ||
| applybox_exposure_pattern | ||
| chs_leading_punct('`" | ||
| chs_trailing_punct1 | ||
| chs_trailing_punct2)'`" | ||
| çerçeveler_tuhaf | %| | Standart olmayan çerçeve sayısı |
| çerçeveler_2ij!?%":; | Standart olmayan çerçeve sayısı | |
| sayısal_noktalama | ., | Punct. chs expected WITHIN numbers |
| tanınmayan_karakter | | | Output char for unidentified blobs |
| ok_tekrarlanan_ch_alfa_say_non_alphanum_wds | -?*= | Allow NN to unrej |
| çatışma_set_I_l_1 | Il1 [] | Il1 conflict set |
| dosya_tipi | .tif | Filename extension |
| tessedit_load_sublangs | ||
| sayfa_ayırıcı | ||
| sınıflandırma_karakter_norm_aralığı | ||
| sınıflandırma_max_değerlendirme_oranı | ||
| sınıflandırma_max_kesinlik_margin | ||
| eşleştirici_iyi_eşik | ||
| eşleştirici_güvenilir_adaptif_sonuç | ||
| eşleştirici_kusursuz_eşik | ||
| eşleştirici_kötü_eşleşme_pad | ||
| eşleştirici_değerleme_margin | ||
| eşleştirici_ortalama_gürültü_boyutu | ||
| eşleştirici_gruplama_max_açı_delta | ||
| sınıflandırma_uyuşmazlık_junk_cezası | ||
| değerlendirme_ölçeği | ||
| kesinlik_ölçeği | ||
| tessedit_class_miss_scale | ||
| sınıflandırma_adapte_edilen_budama_faktörü | ||
| sınıflandırma_adapte_edilen_budama_eşiği | ||
| sınıflandırma_karakter_parçalar i_garbage_certainty_eşiği | ||
| benek_büyük_max_boyut | ||
| benek_değerleme_cezası | ||
| xyükseklik_cezası_abonelikler | ||
| xyükseklik_cezası_tutarsız | ||
| segment_cezası_sözlük_sık_kelime | ||
| segment_cezası_sözlük_durum_tamam | ||
| segment_cezası_sözlük_durum_kötü | ||
| segment_cezası_sözlük_kelimesiz | ||
| kesinlik_ölçeği | ||
| stopper_nondict_certainty_base | ||
| stopper_phase2_certainty_rejection_offset | ||
| stopper_certainty_per_char | ||
| stopper_allowable_character_badness | ||
| doc_dict_pending_threshold | ||
| belge_sözlük_kesinlik_eşiği | ||
| tessedit_kesinlik_eşiği | ||
| chop_split_dist_knob | ||
| chop_overlap_knob | ||
| chop_center_knob | ||
| chop_sharpness_knob | ||
| chop_width_change_knob | ||
| chop_ok_split | ||
| chop_good_split | ||
| segment_araştırma_max_karakter_genişlik_yükseklik_oranı |
En iyi sonuçlar için, OCR uygulamadan önce IronOCR'nin görüntü ön işleme filtrelerini kullanmanız önerilir. Bu filtreler, özellikle düşük kaliteli taramalar veya tablolar gibi karmaşık belgelerle çalışırken doğruluk oranını önemli ölçüde artırabilir.
Sıkça Sorulan Sorular
C# için OCR'a IronTesseract'ı nasıl yapılandırırım?
IronTesseract'ı yapılandırmak için bir IronTesseract örneği oluşturun ve Dil ve Yapılandırma gibi özellikleri ayarlayın. OCR dilini (125 destekli dilden) belirtip barkod okuma etkinleştirebilir, aranabilir PDF çıktısını yapılandırabilir ve karakterleri beyaz listeye alabilirsiniz. Örnek: var tesseract = new IronOcr.IronTesseract { Language = IronOcr.OcrLanguage.English, Configuration = new IronOcr.TesseractConfiguration { ReadBarCodes = false, RenderSearchablePdf = true } };
IronTesseract hangi giriş formatlarını destekler?
IronTesseract, OcrInput sınıfı aracılığıyla çeşitli giriş formatlarını kabul eder. Görüntüleri (PNG, JPG vb.), PDF dosyalarını ve taranmış belgeleri işleyebilirsiniz. OcrInput sınıfı, bu farklı formatları yüklemek için esnek yöntemler sağlar ve neredeyse metin içeren her belge üzerinde OCR işlemi yapmayı kolaylaştırır.
IronTesseract ile metin yanı sıra barkodlar da okuyabilir miyim?
Evet, IronTesseract gelişmiş barkod okuma yeteneklerini içerir. TesseractConfiguration'da ReadBarCodes = true olarak ayarlayarak barkod algılamayı etkinleştirebilirsiniz. Bu, metin ve barkod verilerini aynı belgeden tek bir OCR işleminde çıkarmanıza olanak tanır.
Taranmış belgelerden aranabilir PDF'ler nasıl oluşturabilirim?
IronTesseract, TesseractConfiguration'da RenderSearchablePdf = true olarak ayarlayarak taranmış belge ve görüntüleri aranabilir PDF'lere dönüştürebilir. Bu, metnin seçilebilir ve aranabilir olduğu PDF dosyaları oluşturur, orijinal belge görünümünü korurken.
IronTesseract OCR için hangi dilleri destekler?
IronTesseract, metin tanıma için 125 uluslararası dili destekler. Dil, IronTesseract örneğinizdeki Language özelliğini ayarlayarak, IronOcr.OcrLanguage.English, Spanish, Chinese, Arabic ve birçok başka dili belirleyerek ayarlayabilirsiniz.
OCR sırasında hangi karakterlerin tanınacağını sınırlayabilir miyim?
Evet, IronTesseract, TesseractConfiguration'daki WhiteListCharacters özelliği aracılığıyla karakter beyaz listeye alma ve siyah listeye alma seçeneklerine izin verir. Bu özellik, beklenen karakter kümesini bildiğinizde doğruluğu artırmaya yardımcı olur, örneğin tanımayı yalnızca alfanümerik karakterlerle sınırlamak.
Aynı anda birden fazla belge üzerinde OCR yapabilir miyim?
IronTesseract, toplu işleme için çok iş parçacıklı özellikleri destekler. Paralel işlemeyi kullanarak aynı anda birden fazla belge üzerinde OCR yapabilir, büyük hacimli görüntü veya PDF'lerle çalışırken performansı önemli ölçüde artırabilirsiniz.
IronOCR hangi Tesseract sürümünü kullanır?
IronOCR, Iron Tesseract olarak bilinen Tesseract 5'in özelleştirilmiş ve optimize edilmiş bir sürümünü kullanır. Bu geliştirilmiş motor, standart Tesseract uygulamalarına kıyasla artırılmış doğruluk ve performans sunar ve .NET uygulamalarıyla uyumluluğu korur.
IronOCR veri doğruluğunu nasıl artırabilir?
IronOCR, gelişmiş tanıma algoritmaları ve görüntü düzeltme özellikleriyle veri doğruluğunu artırır, böylece metin çıkarım sürecinin hem güvenilir hem de kesin olmasını sağlar.
IronOCR için ücretsiz bir deneme mevcut mu?
Evet, Iron Software, IronOCR'nin özelliklerini ve yeteneklerini, bir satın alma kararı vermeden önce test edebilmek için ücretsiz bir deneme sunar.

