【问题标题】:How to automatically rotate images based on text?如何根据文本自动旋转图像?
【发布时间】:2021-11-03 17:49:27
【问题描述】:

我目前正在为童子军开发我的老鹰项目。我们正在拍摄坟墓照片以保存家人的过去,但这些照片最初保存在谷歌驱动器中,这意味着 EXIF 信息丢失了。我需要浏览大约 3000 张照片并查看它们需要旋转的方向,并且不是通过 EXIF 而是通过将实际图片保存为它们自身的正确定向版本来进行旋转。我在 java 方面有一些经验,但经验不多,只要有一些关于如何导入正确库的描述,我就会接受任何语言的解决方案。并非所有照片都以相同的方式翻转,有些照片是上下颠倒的,所以我需要一种方法让程序了解单词的方向,然后我需要从那里旋转它们。如果您只能找到它们旋转的角度,我知道一种实际进行旋转的方法。以下是我所拥有的图片的一些示例。这里有一些测试用例left rotateupsidownright rotatecorrect orientation

感谢您的帮助

【问题讨论】:

  • 似乎所有的纵向格式都必须旋转为横向。然后 180° 歧义仍然存在。我认为您无法避免 OCR,但这将具有挑战性。
  • 预处理那些浮雕字母以适合 OCR 可能很困难(试试 EasyOCR,也许它很神奇)。

标签: image-processing


【解决方案1】:

老实说,最好的方法是……手动(开发自动化解决方案非常困难且极其耗时)。

编写一个简短的程序,一个接一个地显示图像,并让您通过一次击键应用正确的旋转(所有图片首先设置为横向方向*)。 3000 张照片可以在一两个小时内处理,这比编写一个会导致许多错误决定、需要更多时间修复的应用程序要快得多。

可能更快,一次显示多个缩略图并让用户单击方向错误的缩略图(例如单击 = 180° 旋转,Shift/Ctrl-单击±90°)。我敢打赌,您可以将处理时间缩短到四分之一。

最后,穷人的解决方案是使用文件资源管理器并右键单击向左旋转或向右旋转。 [别开玩笑,这将是全球最快的。]

*对于肖像图像的预旋转,请考虑一个图像样本,看看哪个最常需要左旋转或右旋转。

【讨论】:

  • 因为直立应该是最容易发现的,也许有一个“模式/工具”来决定你现在点击什么。无论哪种方式,最终该字段将只剩下那些您无法在当前目标中单击的类型......所以“重新洗牌/重置”听起来也很有用。
  • 谢谢,我现在就提出这个单键击的想法。
【解决方案2】:

首先,您必须检测在您的情况下属于字符的对象,并且有许多针对您的数据的预训练对象检测器,其次,您要估计从检测到的对象到字符的正确位置的旋转。

【讨论】:

  • 说起来容易。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-12-06
  • 1970-01-01
  • 2012-06-15
  • 1970-01-01
  • 2021-07-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多