亚马逊要做一款会说话的智能眼镜,但看起来没那么性感

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://csdnnews.blog.csdn.net/article/details/78048604

五年前,当时还不叫 Alphabet 的 Google 推出了一款褒贬不一、充满争议的智能硬件产品,Google Glass。

Google Glass 是一款十分超前、极具创新力的产品,2013 年和 2014 年被很多人称作是智能硬件元年,但 Google Glass 在 2012 年就已经推出,无论是外观的工业设计还是内在的功能设置,Google Glass 都是惊艳的、性感的,远远的甩开一两年之后出现的所谓的智能硬件产品,无论是智能手表、手环还是其他的各种奇葩设备。

但与此同时,Google Glass 充满了争议,因为概念过于超前,整个社会远未准备好接受这个新鲜事物,因为大多数人都还无法坦然接受自己出现在一个陌生人的镜头中。

除此之外,昂贵的价格以及推出之后两年才开始面向消费者销售等诸多问题,使得 Google Glass 最终从消费者市场撤退。如今,Google Glass 只面向企业市场发售。

面对消费市场的 Google Glass 失败之后,市场上几乎没有出现什么知名公司要做智能眼镜的声音。

但终有公司不甘寂寞不信邪,近日,亚马逊被传将要研发一款智能眼镜产品。据“金融时报”报道,亚马逊这款智能眼镜将搭载智能语音助手 Alexa,或者说亚马逊是为了 Alexa 而研发智能眼镜。

与微软、Alphabet 以及苹果公司不同,亚马逊并没有基于计算机、手机及平板电脑等设备来作为 Alexa 类智能语音助手类产品的承载平台,只有 2014 年推出的 Echo 搭载了 Alexa。但 Echo 推出并获得成功之后,很快激起了行业对智能音箱产品的兴趣,Google、苹果都推出了自己的智能音箱产品 Google Home 和 HomePod。

面对激烈的市场竞争,如果希望像其他几个巨头一样,将 Alexa 推向数以亿计的用户,亚马逊无疑是希望能够有新的可以随时随地唤醒 Alexa 的平台出现。

虽然亚马逊也在积极丰富 Echo 的产品线,增加了入门级的产品 Echo Dot 以及便携性更强的 Echo Tap,还有升级版加了屏幕的 Echo Show,以及添加了拍照和摄像功能的 Echo Look。但这些设备产品,都是基于智能家居场景,如果要用户随时随地唤醒 Alexa,亚马逊需要一款移动设备或可穿戴设备,在这样的情况下,智能眼镜成了为数不多的选择之一。

据报道,亚马逊在 2014 年将 Google Glass 的创始人之一 Babak Parviz 招至幕下,可能就是负责智能眼镜的研发工作。Babak Parviz 也曾表示,未来人们会把设备戴在头上走路。

如果亚马逊的智能眼镜推出,意味着亚马逊的语音助理 Alexa 将走出用户的家庭场景,不再仅仅是家庭内部使用的服务。

作为亚马逊的新选择,这款智能眼镜与 Google Glass 采用了骨传导传声技术,用户可以不使用耳塞产品就能听到 Alexa 的声音。

由于要进行语音交互,因此亚马逊智能眼镜肯定会内置麦克风,但如何调取麦克风会是值得关注的问题,是需要用户触摸眼镜某个位置激活麦克风,还是像智能音箱产品一样语音激活?如果是像智能音箱一样,那么智能眼镜的续航能力可能会备受考验。

此外,与 Google Glass 不同,除了可以与手机设备连接,亚马逊的智能眼镜设计会比较普通,可能不会有摄像头和屏幕,更像是一幅普通的眼镜,虽然看起来没有那么性感,但这样可以避免用户戴起来吸引别人注目甚至引起他人不适。这也是 Google Glass 此前一直被大众诟病的地方之一。

苹果此前也被传正在研发一款 AR 眼镜,现在的消息来看,亚马逊的眼镜将更为普通,当然也可能更早上市。

虽然智能眼镜是亚马逊为数不多的选择之一,但是如果按照目前透露出的消息,亚马逊智能眼镜将极其普通,没有摄像头和屏幕,主要利用语音助手 Alexa 进行沟通,那么它的应用场景可能比较有限。

而且,如果亚马逊只是希望搭载 Alexa,将 Alexa 推向更多用户,那么也许智能耳机也是选择之一,既不需要摄像头和屏幕,并且,对于很多近视的人群来说,智能耳机相比智能眼镜也许是更好的选择。

展开阅读全文

说话的钟

01-17

我们经常都可以看见并听到有种会用人的声音来报时的钟,似乎有点神秘^__^,下面我们一块儿来研究一下让钟说话的VB咒语。rn新建一个标准EXE工程,在窗体的声明部分加入:rnDim tmpStr As String'声明全局变量用于储存当前时间rn在窗体上加上一个Timer控件,将其命名为timGo,Enabled属性为True,Interval属性为1000,让它每隔一秒运动一次。双击它并在timGo_Timer()事件中加入以下代码:rnCls '打印新时间之前清除以前的文字rn tmpStr = Format(Time, "hh:mm:ss") '格式化时间rn DrawText 77, 77, Format(Time, "hh:mm:ss"), vbBlue, 44 '打印时间rn DoEvents '转让控制权rn其中:DrawText()代码如下:rnPublic Sub DrawText(x, y, strText As String, colorcode, size)rn 'x--文字左上角基点横坐标rn 'y--文字左上角基点纵坐标rn 'strText--要打印的文字rn 'colorcode--颜色号rn 'size--文字大小rn Dim tmpClor '保存当前前景色rn tmpClor = ForeColorrn '设置左上角基点rn CurrentX = xrn CurrentY = yrn ForeColor = colorcode '设置文字颜色(前景色)rn FontSize = size '设置文字大小rn Print strText '打印文字rn ForeColor = tmpClor '恢复前景色rnEnd Subrn每台计算机上的时间显示格式都不尽相同,因此我们在读出时间之前要对时间进行格式化,使其以"小时小时:分分:秒秒"的格式来显示。rn现在,我们来想想我们是怎样读时间的,如上面的15:16:37,我们就可以这么读"一十五点一十六分三十七秒",因此,我们将时间保存在tmpStr这个字符变量中,并依次扫描出每个字符,判断该读什么音,如果遇上":"则读"点",但只能读一次,因为下一个冒号的位置应读"分",最后读"秒"。以二十四小时制,中间的数如"15"就应该在"1"和"5"之间加读一次"十",遇上两位都是"0"的只应读一次"零"(有谁昏了?120!!)。这种分析是有点让人头痛,但你仔细想一下就会明白了。rn现在,添加一个模块,并在其中加入:rnPublic Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Longrn这个函数就是我们要用来使钟"说话"的关键函数。rn在写下一步的代码之前,请准备这几个文件:0.wav--9.wav,分别是一至九的读音,now.wav--"现在时刻",dot.wav--"点",min.wav--"分",sec.wav--"秒",ten.wav--"十",并放在工程文件保存的目录下(App.Path)。这些音频你可以Windows的用录音机来录,最好是用CoolEditPro来录,还可以加入各种特效,如电流声,可以使你的声音变得像机器人的声音^_~。rn现在,在窗体上加入一CommandButton控件,改名为cmdSpk并在其Click()事件中加入如下代码:rnPrivate Sub cmdSpk_Click()rn Dim i, flag As Integerrn '声明i为循环计数器,flag为标志计数器rn flag = 0 '设置初始值rn PlaySound App.Path & "\now.wav", 0, 0 '"现在时刻:"rn rn For i = 1 To 8 '从最左边开始,时间字符串长度为8rn '1 5 :1 6 :3 7 这一行是时间字符串rn '1 2 3 4 5 6 7 8 这一行是对应的字符的位数rn flag = flag + 1 '标志累加,与相应字符相对应.rn If Not (flag = 8 And Mid(tmpStr, i, 1) = "0") Then '如果最后一位数不是"0"rn If Not (flag = 5 And Mid(tmpStr, i, 1) = "0") Then '如果第5位数不是"0"rn If Not (flag = 2 And Mid(tmpStr, i, 1) = "0") Then '如果第2位数不是"0"rn If Mid(tmpStr, i, 1) <> ":" Then '如果当前值不为":"rn PlaySound App.Path & "\" & Mid(tmpStr, i, 1) & ".wav", 0, 0 rn'播放相应的声音文件rn End Ifrn End Ifrn End Ifrn End If rn If Mid(tmpStr, i, 1) <> "0" Then '如果有十位数rn If flag = 1 Or flag = 4 Or flag = 7 Then'只在需要的地方读出rn PlaySound App.Path & "\ten.wav", 0, 0 '"十"rn End Ifrn End Ifrn If flag = 2 Then '遇上":"rn PlaySound App.Path & "\dot.wav", 0, 0 '"点"rn End Ifrn If flag = 5 Thenrn PlaySound App.Path & "\min.wav", 0, 0 '分rn End Ifrn If flag = 8 Thenrn PlaySound App.Path & "\sec.wav", 0, 0 '秒rn End Ifrn Next irnEnd Subrn看完上面的代码,你不难发现,我们用了一个小小的技巧来让其发出正确的读音,就是用相应的WAV文件名来保存读音,这种方法很笨,但至少可以达到预期效果^_^rn另外,你还可根据这个原型开发出定时报时系统哦(谁扔了个臭鸡蛋?)。rnrn 论坛

没有更多推荐了,返回首页