मुख्य सामग्री पर जाएं
PulsarKit

स्कैन किए पेजों से ऐसी PDF कैसे बनाएं जिसमें टेक्स्ट खोजा जा सके

फोन कैमरा और फ्लैटबेड स्कैनर दो अलग समस्याएं हल करते हैं, और इनमें से कोई भी अपने आप परिणाम को खोजने लायक नहीं बनाता।

लेखक: PulsarKit · ·

पेज की फोटो स्कैन नहीं होती

मेज के ऊपर पकड़ा गया फोन कैमरा आयत नहीं, बल्कि तिरछा चौकोर (ट्रेपेजियम) देखता है, और वह कागज के साफ सफेद रंग के बजाय पेज के साथ कमरे का रंग भी रिकॉर्ड कर लेता है। उस फोटो से असली स्कैन जैसी चीज तक पहुंचने के लिए फ्रेम में शीट के चारों कोने ढूंढने पड़ते हैं और पर्सपेक्टिव का टेढ़ापन हटाना पड़ता है, ताकि पेज सीधा आयत बनकर निकले। फिर लोकल ब्राइटनेस थ्रेशोल्ड लगाया जाता है, जो कागज को सफेद और स्याही को काला कर देता है। इसके बिना आपके पास मेज पर पड़े पेज की एक धूसर, थोड़ी टेढ़ी फोटो रह जाती है। इनमें से कुछ भी ज्यादा साफ फोटो खींचने से नहीं होता। यह फोटो खींचने के बाद लगाया गया एक खास सुधार है।

एक बार में एक पेज, साथ-साथ सुधार

कोनों को अपने आप ढूंढने वाला फीचर ज्यादातर बार ट्रेपेजियम सही पकड़ता है। डिजाइन वाले मेजपोश, गहरी लकड़ी या फ्रेम के किनारे से बाहर जाते पेज पर वह गलती करता है। बड़े साइज वाली किताब के पेज के साथ ऐसा इतनी बार होता है कि इसे फेल होना मानने के बजाय पहले से इसकी उम्मीद रखना बेहतर है। जब कोने चूक जाएं, तो चार हैंडल को हाथ से असली कोनों पर खींचने से एक पेज ठीक हो जाता है, और बाकी बैच दोबारा नहीं करना पड़ता। इस तरह बने पेज एक सूची में जमा होते जाते हैं, जिनका क्रम बदला जा सकता है, जिन्हें चौथाई चक्कर घुमाया जा सकता है या उसी जगह दोबारा खींचा जा सकता है; जो पेज फिर भी गलत जगह पहुंच जाए, उसे बाद में “PDF व्यवस्थित करें” से खिसकाया जा सकता है। दोबारा खींचने पर सिर्फ वही एक पेज बदलता है, पूरा ढेर शुरू से स्कैन नहीं करना पड़ता।

स्कैन की गई PDF में अब भी खोज नहीं होती

जब हर पेज खिंच जाए, सुधर जाए और “JPG से PDF” से एक PDF में जुड़ जाए, तब भी तकनीकी रूप से परिणाम इमेज का ढेर ही रहता है। इसके नीचे कहीं टेक्स्ट लेयर नहीं है, इसलिए डॉक्यूमेंट में कुछ भी सिलेक्ट, कॉपी या सर्च से नहीं ढूंढा जा सकता। इससे वे लोग हैरान होते हैं, जो मानते हैं कि “स्कैन करके PDF” और “खोजने लायक PDF” एक ही बात है। ऐसा नहीं है, और इन दोनों के बीच की खाई OCR भरता है। तैयार स्कैन पर “PDF में OCR करें” चलाने से हर पेज की इमेज के पीछे पहचाने गए टेक्स्ट की एक अदृश्य लेयर ठीक सही जगहों पर जुड़ जाती है। पेज पहले जैसा ही दिखता है, पर अब उसके शब्द सिलेक्ट, कॉपी और सर्च किए जा सकते हैं।

पहली बार में ही सही पहचान

पहचान की सटीकता काफी हद तक इस पर निर्भर करती है कि मूल इमेज कितनी सपाट है, उसमें रोशनी कितनी अच्छी है और कोण कितना एक जैसा है। यही पक्का करने के लिए पहले स्कैन करने और पर्सपेक्टिव सुधारने का कदम है। ठीक से सीधा किया गया, साफ थ्रेशोल्ड वाला पेज कम रोशनी में तिरछे कोण से खींची फोटो से कहीं बेहतर पहचाना जाता है। पहचान से पहले अपने आप चलने वाला डेस्क्यू (टेढ़ापन सीधा करना) और ऑटो-रोटेशन बचा हुआ ज्यादातर झुकाव पकड़ लेते हैं। सही भाषा चुनना भी फायदेमंद है, या तीन तक, अगर डॉक्यूमेंट में कई भाषाएं मिली हों, क्योंकि गलत लिपि के लिए ट्यून की गई पहचान बाकी तरह से साफ पेजों पर भी साफ तौर पर खराब काम करती है।

छोड़ना, दोबारा करना या जबरदस्ती: शुरू करने से पहले चुनें

स्कैन किए पेजों का बैच शायद ही कभी एक जैसा होता है। कुछ पेजों में पिछली बार से पहले ही टेक्स्ट लेयर हो सकती है, और उन्हें दोबारा पहचानना समय बर्बाद करता है, कोई काम की चीज नहीं बदलता। मिले-जुले बैच के लिए सुरक्षित डिफॉल्ट यह है कि जिन पेजों में पहले से टेक्स्ट है, उन्हें न छुआ जाए और सिर्फ इमेज वाले पेज पहचाने जाएं। जब पता हो कि मौजूदा टेक्स्ट लेयर गलत है, जैसे पिछली खराब OCR से गड़बड़ हो गई है, तो वह विकल्प काम आता है, जो पहचान को पहले से मौजूद टेक्स्ट को नजरअंदाज करने और हर पेज को इमेज से दोबारा करने पर मजबूर करता है। दूसरा रास्ता खराब लेयर को अपनी जगह छोड़ देता है, एक दूसरी, बेकार लेयर के नीचे।

कैमरे पर होने वाली आम गलतियां

ज्यादातर खराब स्कैन का फैसला किसी सॉफ्टवेयर के देखने से पहले ही हो जाता है। एक ही लैंप के नीचे फोटो खींचने पर फोन की, या आपके अपने हाथ की, परछाई पेज पर पड़ती है, और कोई थ्रेशोल्ड उस परछाई को स्याही से अलग नहीं कर सकता; खिड़की से आती दिन की रोशनी, या आमने-सामने की दो लाइटें, समस्या को जड़ से हटा देती हैं। चमकदार कागज रोशनी को लेंस में वापस सफेद धब्बे की तरह फेंकता है, जो नीचे का टेक्स्ट मिटा देता है, इसलिए किताब को झुकाएं या लाइट को तब तक खिसकाएं, जब तक चमक पेज से न हट जाए। मोटी किताब अपने आप कभी सपाट नहीं रहती: जिल्द के पास का टेक्स्ट मुड़ता और सिकुड़ता है, और कैमरा उसे धब्बे की तरह दर्ज करता है। सामने वाले पेज को हाथ या किसी वजन से दबाएं और दो पेज के फैलाव के बजाय एक बार में एक पेज खींचें, तो हर लाइन इतनी सीधी रहती है कि पहचानी जा सके। किताब को ऐसी सादी सतह पर रखें, जो कागज से अलग रंग की हो, क्योंकि डिजाइन वाला कपड़ा और गहरी लकड़ी की धारियां ही कोनों की पहचान को धोखा देती हैं। फोन को पेज के समानांतर रखें, तिरछा नहीं, और पहचान से पहले फोटो छोटी न करें: पहचान अक्षरों की पतली रेखाएं पढ़ती है, और छोटी की गई कॉपी सबसे पहले उन्हें ही खोती है। आखिर में, पढ़ने के क्रम में फोटो खींचें और अंत में पेजों की गिनती जांचें; छूटा हुआ पेज अभी दोबारा खींचना OCR के बाद उसका पता चलने से कहीं आसान है।

पहचान के दौरान फाइल के साथ क्या होता है

इस काम के दोनों हिस्से अलग-अलग जगह चलते हैं। “JPG से PDF” से पेज जोड़ना और “PDF व्यवस्थित करें” में उनका क्रम ठीक करना पूरी तरह ब्राउजर में होता है; फोटो कभी अपलोड नहीं होतीं। पहचान अलग है: कई पेज वाले स्कैन को असली OCR इंजन चाहिए, इसलिए “PDF में OCR करें” जुड़ी हुई PDF को एन्क्रिप्टेड कनेक्शन से हमारे सर्वर पर भेजता है, एक काम में 300 MB और 500 पेज तक। अपलोड की गई फाइल काम खत्म होते ही हटा दी जाती है, और परिणाम एक घंटे तक डाउनलोड के लिए रहता है और लगभग दो घंटे में मिट जाता है, चाहे आप उसे डाउनलोड करें या नहीं। पेज उसी संख्या और क्रम में लौटते हैं, हर एक में अदृश्य टेक्स्ट लेयर के साथ; “टेढ़े पेज सीधे करें” और “पेज अपने आप घुमाएं” डिफॉल्ट रूप से चालू हैं और टेढ़े या उल्टे पेजों को भी सीधा कर देते हैं। फोन से खींची गई किताब पेजों की सीमा से बहुत पहले साइज की सीमा तक पहुंच जाती है: लगभग तीन मेगाबाइट प्रति फोटो के हिसाब से सौ पेज ही 300 MB भर देते हैं। इसलिए उसे लगभग सौ-सौ फोटो के हिस्सों में जोड़ें, या तैयार PDF को “PDF स्प्लिट करें” से काटें, और हर हिस्से की पहचान कराएं; “PDF मर्ज करें” परिणामों को क्रम में जोड़ देता है, कुल 500 MB तक। पहले भाषाएं चुनें, कई भाषाओं वाली किताब के लिए तीन तक, और पहचाने गए शब्दों को सादी .txt फाइल में पाने के लिए साथ वाली टेक्स्ट फाइल चालू करें: बाकी पर काम शुरू करने से पहले किसी नमूना पेज को जांचने का यही सबसे तेज तरीका है।

इस लेख में इस्तेमाल हुए टूल

आगे पढ़ें