如何解决当旋转图像无法停止OCR时如何避免这种情况?
我正在尝试获取每90°破裂的图像的OCR,但将旋转后的图像分配给数组并不能像我旋转前一样识别文本,有人知道如果该图像的某些属性会发生什么情况图片还是因为信息丢失?我添加了代码。
using (var engine = new TesseractEngine(path + "\\tessdata","eng",EngineMode.Default))
{
//using (var img = Pix.LoadTiffFromMemory(buffer))
using (var img = Pix.LoadFromMemory(buffer))
{
Utils.PixToBitConverter pixToBit = new Utils.PixToBitConverter();
Bitmap bmp = pixToBit.Convert(img,true);
Grayscale filter = new Grayscale(0.2125,0.7154,0.0721);
Bitmap grayImage = filter.Apply(bmp);
Threshold filterBin = new Threshold(100);
filterBin.ApplyInPlace(grayImage);
for (int i = 0; i < 4; i++)
{
switch (i)
{
case 0:
arrayImage[i] = grayImage;
break;
case 1:
grayImage.RotateFlip(RotateFlipType.Rotate90FlipNone);
arrayImage[i] = grayImage;
break;
case 2:
grayImage.RotateFlip(RotateFlipType.Rotate180FlipNone);
arrayImage[i] = grayImage;
break;
case 3:
grayImage.RotateFlip(RotateFlipType.Rotate270FlipNone);
arrayImage[i] = grayImage;
break;
}
}
int k = 0;
for (k= 0; k < 4; k++)
{
using (var page = engine.Process(arrayImage[k]))
{
text = page.GetText();
text = text.ToLower();
}
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。