基于文字识别---实现点击图片任意位置文字即可翻译的功能

基于文字识别—实现点击图片任意位置文字即可翻译的功能

文字识别功能是基于百度接口的,以前只是做了一个简单的识别,将识别出的文字显示出来,后来想能不能直接点击图片上的文字,然后将文字读取出来,用语音读出文字,或者去翻译文字,这样无疑更加方便,实用,快捷。

我的想法是,先将整个图片中的文字识别出来,然后在图片上写一个相应大小的div遮罩层,再在每行文字上形成一个遮罩层,当点击图片上的文字时,其实点击的就是图片上的div层,然后将div中所包含的数据传到后端处理,实现效果如下图

实现前,需要将数据转换,获得每行数据的left,top,height,width的属性值,然后用js获取图片大小,然后将div设置为相同大小,具体操作看代码,在形成遮罩层的代码比较麻烦

<div id="img_zhezhao" style="position: relative;"  >
                <img src="{$image_src}" id="img_s"  alt="" align="left">
                {volist name="result" id="line"}
                <div style="height: {$line.height}px;width: {$line.width}px;border:1px solid green;position: absolute; top: 1px; left: 0px;margin-left: {$line.left}px;margin-top: {$line.top}px;"></div>
                {/volist}
            </div>

下面是使用效果,




  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
可以使用Python的GUI工具包,如Tkinter或PyQt,结合baidu-aip的文字表格识别API,实现基于baidu-aip的文字表格识别可视化Python应用程序。 下面是一个简单的示例代码: ```python import tkinter as tk from aip import AipOcr # 初始化baidu-aip的文字识别客户端 APP_ID = 'your_app_id' API_KEY = 'your_api_key' SECRET_KEY = 'your_secret_key' client = AipOcr(APP_ID, API_KEY, SECRET_KEY) # 定义GUI应用程序界面 class App: def __init__(self, master): self.master = master master.title("文字表格识别") self.label = tk.Label(master, text="请输入图片路径:") self.label.pack() self.entry = tk.Entry(master) self.entry.pack() self.button = tk.Button(master, text="识别", command=self.recognize) self.button.pack() self.result_label = tk.Label(master, text="") self.result_label.pack() # 实现文字表格识别功能 def recognize(self): # 获取用户输入的图片路径 image_path = self.entry.get() # 打开并读取图片文件 with open(image_path, 'rb') as f: image = f.read() # 调用baidu-aip的文字表格识别API result = client.tableRecognitionAsync(image) # 显示识别结果 self.result_label.configure(text=result) # 创建GUI应用程序窗口并运行 root = tk.Tk() app = App(root) root.mainloop() ``` 需要注意的是,在使用baidu-aip的文字表格识别API时,需要先调用`tableRecognitionAsync`方法提交图片进行异步识别,而后再通过`getTableRecognitionResult`方法获取识别结果。具体使用方法可以参考baidu-aip的官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值