استخدام MODI في C# لقراءة الصورة - الأرقام بطول 1 مفقودة
سؤال
أنا على وشك إنشاء تطبيق C#أحاول قراءة النص من صورة GIF-ISM (OCR)-أنا أستخدم Modi والصور تشبه إلى حد ما قسيمة لوتو (أرقام عشوائية في الصفوف والأعمدة). حصلت الآن على الرمز التالي الذي قرأ جميع الأرقام باستثناء الأرقام الفردية (1 ، 2 ، 3 ...)
MODI.Document objModi = new MODI.Document();
objModi.Create("C:\\image.gif");
objModi.OCR(MODI.MiLANGUAGES.miLANG_DANISH, true, true);
MODI.Image image = (MODI.Image)objModi.Images[0];
MODI.Layout layout = image.Layout;
لا يمكنني تغيير محتوى الصورة ، لكن هل يمكنني فعل أي شيء باستخدام الكود أعلاه حتى يتمكن من قراءة الأرقام المفردة؟
المحلول 2
لم يجد حلاً مثاليًا ، وحصلت على أفضل نتيجة بإضافة محتوى إضافي إلى صورتي كما هو موضح في تعليقي الأخير.
نصائح أخرى
سلسلة reult = "" ؛ foreach (modi.word worditems in imag.layout.words) {result+= worditems.text+'،' ؛ }
يمكنك إضافة رمز follwoing
numofwords = layout.NumWords;
for (int l = 0; l < numofwords; l++)
{
word = (MODI.Word)layout.Words[l];
for (int j = 0; j < word.Rects.Count; j++)
{
MODI.MiRect rect = (MODI.MiRect)word.Rects[j];
if (j == 0)
{
top = rect.Top;
}
if (height == 0 || height < (rect.Bottom - rect.Top))
height = rect.Bottom - rect.Top;
width = rect.Right - rect.Left;
right = rect.Left + width;
top = rect.Top;
left = rect.Left;
}
OCRDocWord ocrword = new OCRDocWord(top, left, width, height, word.Text);
width = 0;
wordlist.Add(ocrword);
}
لا تنتمي إلى StackOverflow