יישום סריקת מסמכים באמצעות מצלמת מובייל

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

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
יישום סריקת מסמכים באמצעות מצלמת מובייל
בינוני
~3-5 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

יישום סריקת מסמכים באמצעות מצלמת מובייל

אנחנו צוות של מהנדסי מובייל עם ניסיון של 7+ שנים בראייה ממוחשבת ב-iOS ואנדרואיד. במהלך תקופה זו, יישמנו סריקה של דרכונים, חוזים, קבלות וספרים פתוחים. המשתמש מחזיק את הטלפון מעל המסמך, האפליקציה מוצאת אוטומטית את קצוות הדף, מתקנת פרספקטיבה ומוציאה PDF נקי. זה לא "צילום תמונה וחתוך" — בפנים יש גלאי קווי מתאר (Canny, Hough), טרנספורמציה הומוגרפית ועיבוד לאחר לקריאות. כל שלב יכול להיהרס אם לא מתחשבים בתנאי תאורה ובסוגי מסמכים. צרו קשר כדי להעריך את הפרויקט שלכם — נעזור לכם לבחור את הפתרון האופטימלי.

למה זיהוי קצוות נכשל על בוהק וצללים

ב-iOS, VNDetectRectanglesRequest (Vision) מחזיר VNRectangleObservation עם ארבע נקודות פינה בקואורדינטות מנורמלות. הבעיה היא שעל נייר מבריק תחת אור ישיר, האלגוריתם מבלבל בין בוהק לקצה הדף. פתרון: לפני הזיהוי, יש להחיל CIFilter עם CIColorControls (הפחתת inputSaturation) ו-CIHighlightShadowAdjust. זה מסיר בוהק כפגמי צבע. בנוסף, אפשר להגדיל ניגודיות (רמה 1.2–1.5) כדי להפריד טוב יותר בין קצוות.

באנדרואיד, ML Kit Document Scanner (com.google.android.gms:play-services-mlkit-document-scanner) מתמודד טוב יותר עם צללים אך דורש Google Play Services. חלופה ללא תלות ב-GMS היא OpenCV findContours + approxPolyDP עם סינון לפי שטח ויחס גובה-רוחב. סף של minArea = 30% משטח המסגרת מסנן אובייקטי רקע. עוד על האלגוריתם ב-תיעוד OpenCV. עבור Flutter, אנו משתמשים בערוץ מקורי דרך cunning_document_scanner, שמעביר את הזיהוי לפלטפורמה.

איך לבחור בין SDK מקורי ל-OpenCV?

הבחירה תלויה במערכת האקולוגית. אם האפליקציה משתמשת ב-Google Play Services, ML Kit מספק ממשק משתמש מוכן ודיוק טוב. למכשירים ללא GMS (למשל, Huawei) — OpenCV. ב-iOS, Vision הוא הבחירה האופטימלית מאז 2017, תומך ב-Live Photos ובהאצת Metal. עם זאת, OpenCV דורש שיקולי רישוי (BSD) ויותר קוד. ביצועים: ב-iPhone 13, זיהוי Vision לוקח ~80 אלפיות השנייה, OpenCV (~120 אלפיות השנייה עם אופטימיזציית NEON).

איך לבצע נכון תיקון פרספקטיבה

לאחר קבלת ארבע נקודות, יש להחיל טרנספורמציית פרספקטיבה. iOS: CIPerspectiveCorrection עם העברה מפורשת של inputTopLeft, inputTopRight, inputBottomLeft, inputBottomRight בקואורדינטות תמונה (לא בתצוגה מקדימה). טעות נפוצה היא שימוש בקואורדינטות שכבת התצוגה המקדימה ישירות ללא חישוב מחדש דרך VNImagePointForNormalizedPoint. אנדרואיד: getPerspectiveTransform + warpPerspective מ-OpenCV או טרנספורמציית מטריצה דרך android.graphics.Matrix.setPolyToPoly. האחרון עובד ללא OpenCV אך מוגבל לטרנספורמציות אפיניות — לא מתאים לעיוות פרספקטיבה חזק. ב-Flutter — חישוב הומוגרפיה ידני באמצעות חבילת image או ערוץ מקורי.

יישום טכני של תיקון פרספקטיבה

עבור iOS: לאחר קבלת נקודות מ-VNRectangleObservation, יש להמיר אותן לקואורדינטות תמונה דרך VNImagePointForNormalizedPoint. לאחר מכן להעביר ל-CIPerspectiveCorrection. לניפוי באגים, ציירו את קו המתאר על AVCaptureVideoPreviewLayer דרך CAShapeLayer תוך עדכון כל 5 פריימים. באנדרואיד: השתמשו ב-getPerspectiveTransform מ-OpenCV, אך למסלולים שאינם OpenCV — setPolyToPoly עם PST (טרנספורמציית פרספקטיבה) דרך PST (perspective transform). חשוב: תחת עיוות חזק, טרנספורמציות אפיניות נותנות שגיאה של עד 15% בקצוות.

עיבוד לאחר: קריאות לפני יופי

לאחר יישור, יש לעבד את המסמך לקריאות בהדפסה או ב-OCR:

  • בינאריזציה אדפטיבית — Matrix עם שיטת גאוס עובדת טוב יותר מ-Otsu על מסמכים עם תאורה לא אחידה.
  • Deskew — אם המסמך מסובב ב-1–2° לאחר הטרנספורמציה, Hough Lines מוצא את השיפוע של שורות הטקסט ומתקן אותו.
  • חדות — cv::adaptiveThreshold (iOS) או מסנן Sharpness (אנדרואיד) עם ערך מתון (0.4–0.6), לא יותר.

יש לתת למשתמש מצבי צבע: "אוטומטי", "מסמך" (שחור ולבן), "תמונה" (צבע מלא). במצב "מסמך" — בינאריזציה. במצב "אוטומטי" — ניתוח היסטוגרמה: אם המסמך מכיל <5% פיקסלים רוויים, יש להחיל עיבוד מונוכרומי.

שלב iOS אנדרואיד Flutter
זיהוי Vision (VNDetectRectanglesRequest) ML Kit Document Scanner / OpenCV cunning_document_scanner / ערוץ
טרנספורמציה CIPerspectiveCorrection OpenCV warpPerspective / Matrix.setPolyToPoly ידני ב-Dart (חבילת image)
עיבוד לאחר CIFilters (Sharpen, Binarization) OpenCV adaptiveThreshold + deskew ערוץ פלטפורמה / מסנני dart
ייצוא PDF PDFKit (UIGraphicsPDFRenderer) android.graphics.pdf.PdfDocument חבילת pdf (pub.dev)

סקירת ביצועים בפלטפורמות שונות

פרמטר iOS (iPhone 13) אנדרואיד (Pixel 6) Flutter (ערוץ מקורי)
זמן זיהוי ~80 אלפיות השנייה ~110 אלפיות השנייה ~150 אלפיות השנייה (עם תקורה של גשר)
גודל PDF (A4) ~200 KB ~220 KB ~230 KB
קצב פריימים בתצוגה מקדימה 30 FPS 30 FPS 24 FPS

סריקה מרובת עמודים ו-PDF

אנו אוספים CISharpenLuminance / Sharpness, מייצאים דרך UIImage[] (iOS 11+) או Bitmap[]. ב-Flutter — חבילת PDFKit (pub.dev). אנו מייעלים גודל PDF: דחיסת JPEG של 85% מספיקה לקריאות, עם עמוד A4 של ~150–250 KB לעומת 2–4 MB ל-PNG. תצוגה מקדימה בזמן אמת: אנו מציגים את קו המתאר על גבי android.graphics.pdf.PdfDocument / pdf דרך AVCaptureVideoPreviewLayer / PreviewView. אנו מעדכנים את קו המתאר כל 3–5 פריימים (לא כל פריים) — אחרת הגלאי צורך CPU והתצוגה המקדימה מתעכבת.

מה כלול בעבודת שילוב הסריקה

  • ביקורת דרישות: ניתוח סוגי מסמכים, תנאי צילום, פלטפורמות יעד.
  • בחירת SDK: Vision/ML Kit מקורי לעומת OpenCV לעומת פתרונות מוכנים.
  • שילוב תצוגה מקדימה עם שכבת קו מתאר דינמית.
  • יישום זיהוי, תיקון פרספקטיבה ועיבוד לאחר.
  • ייצוא PDF עם דחיסה והגדרות מצב צבע.
  • בדיקות על 10+ סוגי מסמכים: דרכון, חוזה, קבלה, ספר פתוח.
  • תיעוד API ומסירת קוד מקור.

הניסיון שלנו: מעל 50 פרויקטי סריקה מוצלחים, מעל 5 שנים בפיתוח מובייל. אנו מבטיחים פעולה יציבה במכשירים מודרניים. הזמינו שילוב סריקת מסמכים באפליקציה שלכם — צרו קשר להערכת לוחות זמנים ועלות. לוחות זמנים: מ-3 עד 5 ימי עסקים לפלטפורמה, ועוד 2–3 ימים עם OCR.

מידע נוסף: טרנספורמציה הומוגרפית היא מרכיב מפתח בתיקון פרספקטיבה.