百万军师v1.0——直播答题答案快速搜索

最近直播答题很火,凑了一段时间热门,最好用的还是百度的语音搜索,速度很快。可惜有时候题目太长,没时间去念题,所以琢磨了一下写了这个小小的软件来辅助搜索答案。

基本的思路很简单,要利用安卓的模拟器,题目出来后,把题目截图,然后用OCR识别,最后用百度搜索。

中间绕了很多弯路,想过用tesseract,也用过onenote,识别效果都不好,最后还是不得不用了百度的OCR,虽然是收费的,效果还是刚刚的,识别率基本100%,基本2-3秒出搜索结果。

最终的效果图如下:


看一下视频效果

演示视频一

演示视频二

软件使用很简单,点击“选择识别区域”按钮后,先在屏幕上画个框,题目一出来马上按“识别按钮”,百度搜索结果就出来了。


窗口的代码就不帖了,把python提交的代码贴一下。

# -*- coding: utf-8 -*-
import sys, urllib, urllib2, json
import base64
import StringIO
reload(sys)
sys.setdefaultencoding('utf8')APPKEY=你的APPKey
SecretKey=你的SecretKEY#token
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+APPKEY+'&client_secret='+SecretKey
request = urllib2.Request(host)
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib2.urlopen(request)
content = response.read()
result=json.loads(content)
if (content):token=result.get("access_token")url = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token='+token
data = {} #
data['languagetype'] = "CHN_ENG"
#data['imagetype'] = "1"# read picture
file = open('question.jpg', 'rb')
image = file.read()
file.close()
data['image'] = base64.b64encode(image)
decoded_data = urllib.urlencode(data)
req2 = urllib2.Request(url, data=decoded_data)
req2.add_header("Content-Type", "application/x-www-form-urlencoded")resp = urllib2.urlopen(req2)
content = resp.read()
result=json.loads(content)linenum=result["words_result_num"]
words=""
for i in range(0,linenum):words = words+ result["words_result"][i]["words"]
f=open(sys.path[0] + '/result.txt', 'wb+')
f.write(words)
f.close()




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/51163.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

对十二个一的假想

十二个一的假想 互动媒体技术作业: 将十二个”一“设想为人物角色/或事物: 想象它们是某个团体的成员,请描述每一位成员的特色,及其与其他成员和整个团队的关系。 这里我假想这是一支小队。 队长 开放性:3 责任心:7 外倾性:7 宜人性:2 神经质性:5 身为队长的他有着…

scrapy野蛮式爬取(将军CrawlSpider,军师rules)

如果将Spider比作scrapy爬虫王国的一个元帅,那CrawlSpider绝对是元帅手底下骁勇善战的将军。而其rules,便是善于抽丝剥茧的军师。 以下便记录以下一个CrwalSpider的作战过程。 1、 首先创建scrapy项目 python -m scrapy startproject …

语音合成(speech synthesis)两种方法-拼接合成和参数合成

TTS(Text To Speech)是一个序列到序列的匹配问题。处理TTS的方法一般分为两部分:文本分析和语音合成(speech synthesis)。文本分析可能采用NLP方法。 而在语音合成(speech synthesis)上有两种主…

一分钟告诉你可以合成声音的手机软件

前端时间有位朋友和我分享了一段立体声的纯音乐。我觉得它听起来十分的悦耳,于是便网上查找了一些关于声音合成立体声的软件。经过我一番搜寻之后,终于找到了几个简单易上手的软件。今天借这个机会,也给大家分享一下这些软件吧!如…

语音合成:模拟最像人类声音的系统

近年来随着深度学习技术的不断发展,语音合成技术也取得了突破性进展,也成为了很多设备的标配。比如siri通过手机跟我们讲冷笑话,车载音箱实时播报汽车的行进路线等等无不用到语音合成。 并且,深度神经网络在语音合成模型与声码器中…

【点灯科技+esp8266+小爱同学】实现语音控制的米思齐代码和arduino代码

以下转换后的arduino代码。 #define BLINKER_WIFI #include <Blinker.h> char auth[] = "点灯分配的密钥"; char ssid[] = "你的wifi"; char pswd[] = "wifi密码"; void miotPowerStatedata(const String & data){ if (data == BL…

首页 系统相关 正文 小米手机远程和电脑互相连接及控制的方法

【文章摘要】Windows系统自带了一个远程桌面服务&#xff0c;我们可以很方便利用这个服务来进行远程桌面控制&#xff0c;很多人会用电脑进行远程终端登陆&#xff0c;用手机进行远程桌面访问的人就不多了。下面详细给大家说明。 原文链接&#xff1a;http://bbs.xiaomi.cn/thr…

8. R语言绘图系统介绍、高级绘图与低级绘图、【绘图参数】、绘图函数包

b站课程视频链接&#xff1a; https://www.bilibili.com/video/BV19x411X7C6?p1 腾讯课堂(最新&#xff0c;但是要花钱&#xff0c;我花99&#x1f622;&#x1f622;元买了&#xff0c;感觉讲的没问题&#xff0c;就是知识点结构有点乱&#xff0c;有点废话&#xff09;&…

R语言画图/绘图/作图2

R语言画图/绘图/作图2 动画气泡图 可以使用该gganimate包实现动画气泡图。它与气泡图相同&#xff0c;但是&#xff0c;您必须显示值如何在第五维&#xff08;通常是时间&#xff09;上变化。 要做的关键是将 设置为aes(frame)要在其上设置动画的所需列。其余与地块建设相关的程…

R语言之ggplot2画图篇

1. qplot quick plot 数据集&#xff1a;diamonds &#xff08;1&#xff09;基本用法 eg library(ggplot2) length(diamonds) set.seed(1410)#设定种子数 dsmall<-diamonds[sample(nrow(diamonds),100),]#随机产生样本数 qplot(carat,price,datadiamonds)#画散点图 qpl…

R语言中的高级绘图

1、散点图 attach(mtcars) plot(wt, mpg, main"Basic Scatterplot of MPG vs. Weight", xlab"Car Weight (lbs/1000)", ylab"Miles Per Gallon ", pch19) ablin…

R语言常用的绘图参数

1.点线结构参数 在plot函数中&#xff0c;使用参数type来控制点线输出结构 参数type的取值及定义 参数取值 描述 typep 点 typel线 typeb 点连线 typeo 线穿过点 typeh 悬垂线 types 阶梯线 xc(2,4,6,8,10) xts(x,startc(2010,1)) #将x转换成时序数据&#xff0c…

R语言ggplot2|玩转Manhattan图-你有被要求这么画吗?

Manhattan图算是GWAS分析的标配图了&#xff0c;可参考Bio|manhattan图 进行绘制。 由于Manhattan点太多&#xff0c;后期AI/PS修改的话难度有点大&#xff0c;如果可以“个性化”绘制的话那是极好的&#xff01; 一 载入R包&#xff0c;数据 1&#xff09;载入数据处理的tidyv…

[R语言绘图]plot函数的使用

R语言中最简单的一个绘图函数就是plot了。如果之前用过matlab&#xff0c;用R画图的时候就很可能会尝试plot这个命令能不能使用。plot(a)一般就能得到我们想要的图。但是&#xff0c;如果想进一步设置其他属性&#xff0c;如标题、x轴名称、y轴名称等&#xff0c;还需要对另外的…

R语言绘图之ggplot2

一.基础知识 首先载入tidyverse包 # install.packages("tidyverse") library(tidyverse) 这一行代码加载了tidyverse的核心R包。在几乎所有的数据分析任务中&#xff0c;你都会用到这些R包。这行代码还会告诉你tidyverse中的哪些函数与基础R包&#xff08;或者已加…

R语言(ggplot2绘图)

原文链接&#xff1a;https://wklchris.github.io/R-ggplot2.html ggplot2 的语法与 R 原生的语法并不统一&#xff0c;但是熟悉起来也并不复杂。它主要通过“”连接多个绘图函数&#xff0c;同时允许将绘图结果赋值给其他对象&#xff0c;因此使用起来更加灵活。 ggplot2 最为…

R语言绘图——实用篇 ggplot2绘图

文章目录 R语言绘图——实用篇 ggplot2绘图绘制等值线图相关如何绘制等值线图插值&#xff0c;平滑插值插值&#xff0c;缺失值插值色条(色阶)划分图例的色条(色阶)修改&#xff0c;合理的参数值选用图例的色条(色阶)修改&#xff0c;刻度线修改无效或不显示的问题 地图绘制相关…

R语言ggplot绘图

一、R语言ggplot2绘折线图 读取文件放置的位置&#xff0c;赋予数组名称 library(ggplot2) setwd("E:\\Buffer\\My work\\ggplot_data") diameter <- read.csv("0.031_0.062_ggplot_try.csv", stringsAsFactors FALSE)看看数组里的各种内容 class(d…

R语言基础画图/绘图/作图

R语言基础画图 R语言免费且开源&#xff0c;其强大和自由的画图功能&#xff0c;深受广大学生和可视化工作人员喜爱&#xff0c;这篇文章对如何使用R语言作基本的图形&#xff0c;如直方图&#xff0c;点图&#xff0c;饼状图以及箱线图进行简单介绍。 0 结构 每种图形构成一…

R语言ggplot2绘图

R语言绘图之ggplot2 一.绘图的基本要素1.图形映射2.分面&#xff1a;3.添加平滑曲线 二.绘制条形图设置坐标抽格式 一.绘图的基本要素 首先载入tidyverse包 install.packages("tidyverse") library(tidyverse)​​​​这一行代码加载了tidyverse的核心R包。在几乎所…