גרסאות on-line עדכניות של כל הדפים מהויקי של hocr ניתן למצא כאן

מדריך לשימוש בתכנת hocr משורת הפקודה

רישיון

חבילת התכנה hocr ומדריך זה מופצים תחת רישיון GPL

תודות

הפרויקט נתמך על-ידי מענק של איגוד האינטרנט הישראלי

www.isoc.org.il

אתר הפרויקט מאוחסן בשרתי: http://www.brelios.de

תודה לכל מי שעזר להכין ולהגיה מדריך זה.

תודה ל:

טל: טיפ לעבודה עם קבצים מרובים

אם תרמתם למדריך זה הרגישו חופשיים להוסיף את שימכם פה !

לפני קריאת מדריך זה

תכנת hocr פועלת משורת הפקודה. היא בנויה להקל על משתמשים שאינם מעוניינים להפעיל מנשק גרפי כדי לבצע זיהוי תוים אופטי בארכיון דיגטאלי. תכנת hocr מאפשרת שימוש בתסריטים כדי להקל על מיכון ואוטומציה של זיהוי תוים בארכיונים המכילים קבצים רבים.

  • תכנת hocr אינה תכנת סריקה, היא אינה מתקשרת עם הסורק ואינה מיצרת קבצי תמונה חדשים
  • hocr פועלת על תמונות שכבר נסרקו וקיימות במערכת, כדי ללמוד כיצד לסרוק תמונות חדשות לתוך מערכת המחשב יש לקרא את מדריך סריקה

כללי

מדריך זה מסביר את השימוש בתכנת hocr.

תכנת hocr מבצעת את פעולת פיענוח התמונה לטקסט הניתן לעריכה.

ניתן לקבל עזרה על השימוש בתכנת hocr ע“י שימוש בפקודה man או ע”י הדגל h

  man hocr

או

  hocr -h

שימוש טיפוסי בתכנה יראה כך:

  hocr -i test1.pnm > test1-utf8.txt

וימיר את התמונה test1.pnm לטקסט הניתן לעריכה בקובץ test1-utf8.txt

תסדיר התמונה pnm

תכנת hocr מקבלת קלט רק בתסדיר pnm. ניתן להמיר את רוב תסדירי התמונה ל pnm ע“י שמוש בתוכנה החופשית netpbm

לדוגמה:

  jpegtopnm test4.jpg > test4.pnm

יצור קובץ תמונה חדש בתסדיר pnm המכיל את התמונה test4.jpg

כעת אפשר לבצע זיהוי אותיות אופטי ע”י תכנת hocr על הקובץ החדש.

לדוגמה:

  hocr -i test4.pnm > test4-utf8.txt

חבילת netbbm מכילה תכנות רבות:

pstopnm

pngtopnm

jpegtopnm

411toppm

tifftopnm

ועוד תכנות להמרת תמונות בתסדירים שונים מ ואל תסדיר pnm. ראה הדרכה לשימוש בתכנות אלו באתר netpbm

קידוד utf-8

תכנת hocr מוציאה פלט בקידוד utf-8 שהוא קידוד נוח לעבודה בעברית המכילה ניקוד.

ניתן בקלות להמיר את הפלט מקידוד utf-8 לכל קידוד מקובל אחר כמו ISO-8859-8,MacHebrew או cp1255.

כדי להמיר מקידוד לקידוד נשתמש בתכנה iconv

iconv יודעת להמיר כמעט כל קידוד לכל קידוד. אם נרצה להמיר את הפלט שקבלנו לקידוד iso-8859-8 נשתמש בפקודה iconv כך:

  iconv -c -s -f utf-8 -t iso-8859-8 test4-utf8.txt > test4-iso8859-8.txt

מאחר וקידוד iso-8859-8 אינו מסוגל לייצג ניקוד השתמשנו בדגלים s ו c כדי לבקש מהתכנית לא להודיע על שגיאה.

תכנת iconv יודעת להמיר מ ואל קידודים רבים:

  • קידודים מיוחדים לעברית:
  ISO-8859-8, CP1255, CP862, MacHebrew
  • קידודים המכילים שפות רבות וגם עברית:
  UTF-8 UCS-2, UCS-2BE, UCS-2LE UCS-4, UCS-4BE, UCS-4LE UTF-16, UTF-16BE ...

עוד על תכנת iconv אפשר ללמוד באתר התכנה libucinv

הדגלים בתכנת hocr

שימוש כללי בפקודה נראה כך:

  hocr [OPTION] [-i] pnm file

הדגלים:

h - מציג עזרה

i - קובץ הקלט

o - קובץ הפלט

d - שימוש במילון פנימי כדי לנסות לשפר את הפלט

n - התכנה תנסה לזהות ניקוד בקובץ התמונה

s - התכנה תשתמש ברווחים כדי לייצג מרווח טבלאי tab

t - התכנה תנסה לזהות הזחות בתמונה ותוסיף מרווח לפני שורות המוזחות לשמאל

p - קובץ פלט PPM, הוצא פלט של התמונה לאחר זיהוי אזורי הטקסט (החל מגירסה 0.7.2).

f - תסדיר הפלט :text/html, תכנת hocr יכולה ליצור פלט בתסדיר טקסט נקי text או בתסדיר html

לדוגמה:

  hocr -n -f html -i text.pnm -o text-utf8.html

פקודה זו תפענח את התמונה text.pnm, היא תזהה ניקוד ותוציא את הפלט בתסדיר html לתוך הקובץ text-utf8.html

צינורות

ניתן להשתמש בתכנה (החל מגירסה 0.7.2) כצינור קלט/פלט

לדוגמה:

  jpegtopnm test3.jpg | hocr -n | paps --rtl --top-margin 100 > file.ps

תסריט לדוגמה

כאשר תסריט זה מופעל בספריה המכילה מספר קבצי jpeg, התסריט יעבור על כל קובץ תמונה בספריה ויצור קובץ ps : פוסט-סקריפט מוכן להדפסה של הטקסט שזוהה.

התכנות בהן יעשה שימוש:

netpbm - אוסף תכנות הממירות תסדירי תמונה שונים מ ואל תסדיר pnm

paps - תכנה המייצרת קבצי ps : פוסט-סקריפט, מקובצי טקסט בקידוד utf-8

התסריט כתוב בשפת התיסרוט של bash , שהיא המעטפת הסטנדרטית ברוב הפצות הלינוקס.

#!/bin/bash

# create dirs for pictures texts and and post-script files
mkdir hocr_files

# convert jpg files fo pnm files
for pic_file_name in `ls *.jpg`; do 
	jpegtopnm $pic_file_name > hocr_files/$pic_file_name.pnm
done

# translate pnm files to text files
for pic_file_name in `ls hocr_files/*.pnm`; do 
	hocr -n -i $pic_file_name > $pic_file_name.txt
done

# translate txt files to ps files
for pic_file_name in `ls hocr_files/*.txt`; do 
	paps  --top-margin 100 --rtl $pic_file_name > $pic_file_name.ps
done

# move the post-scipt files to new dir
mkdir hocr_ps_files
mv hocr_files/*.ps hocr_ps_files/

התסריט להורדה

טיפ לעבודה עם קבצים מרובים

כאשר רוצים לזהות טקסט בכמות גדולה של קבצים סרוקים, למשל 100, נכתוב script שיפעיל את hocr באופן אוטומטי עבור כל קובץ וישמור את הפלט לקובץ טקסט נפרד. אם נבקש מ-hocr לשמור גם קובץ PPM עבור כל קובץ קלט, (בעזרת האופצייה p) הדבר יקל עלינו בהמשך.

לאחר שסיימנו את ההמרה - קיבלנו שתי קבוצות של קבצים: מאה קבצי txt ומאה קבצי PPM. עכשיו נרצה לדעת האם היו קבצים בעייתיים במיוחד. בעזרת תוכנה לצפייה ודפדוף בתמונות (כגון ACDSee או XnView) נוכל לעבור במהירות רבה על כמות גדולה של קבצי ה-PPM שקיבלנו, ולקבל רושם כללי לגבי איכות הזיהוי בכל דף. אם נגיע לקובץ שבו אין ריבועים מסביב לאותיות, חסרים ריבועים וכו’, נדע מייד שהקובץ התמונה המקורי דורש טיפול פרטני (כגון סריקה מחדש, סיבוב של התמונה, חיתוך שוליים ללא טקסט וכו’) ולאחריו זיהוי OCR נוסף.

 
  %D7%95%D7%99%D7%A7%D7%99/%D7%9E%D7%A8%D7%A8%D7%99%D7%9A+%D7%A9%D7%99%D7%9E%D7%95%D7%A9+%D7%91%D7%AA%D7%9B%D7%A0%D7%AA+hocr+%28%D7%A9%D7%95%D7%A8%D7%AA+%D7%94%D7%A4%D7%A7%D7%95%D7%93%D7%94%29.txt · שונה לאחרונה ב: 2006/01/16 11:18
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Driven by HebDokuWiki