原文地址:A Picture is Worth a Thousand Words, Faces, and Barcodes—The Shape Detection APIundefined作者: Thomas Steiner 日期: 2019-02-22
有了如navigator.mediaDevices.getUserMedia这样的api结合新版Chrome为Android提供的照片选择器,无论是捕获图像、获取实时视频数据还是上传本地图片都变得非常容易。不过目前这些动态或静态图像数据处理都是不透明的,尽管图片实际上包含了许多有趣的特征,如人脸、条形码和文本。
在以前, 如果开发人员想要在客户端提取这些特征,比如开发一个二维码识别器,需要依赖第三方 JavaScript库。这会造成不小的性能开销并且会增加项目的复杂度。然而包括 Android、iOS和 macOS在内的操作系统,以及设备相机模块中的硬件芯片,都已经有表现不俗的特征探测器,如 Android上的人脸探测器或iOS通用功能检测器。
图形检测API是一组JavaScript接口,通过调用这些接口来调用原生设备的探测功能。目前, 已经有包括通过FaceDetector借口实现的人脸检测、BarcodeDetector接口实现的条形码检测, 以及通过TextDetector接口实现的文本检测可以使用。
图形检测API目前支持人脸,条形码和文本的检测。以下列出了这三个功能的使用场景:
项目 | 进度 |
---|---|
创建解释器 | 已完成 |
构建草案规范 | 进度中 |
反馈收集和设计 | 进度中 |
浏览器验证 | 进度中 |
发布 | 未开始 |
FaceDetector、BarcodeDetector和TextDetector的接口被设计得非常简单,他们都提供了一个简单的异步方法detect,接收参数则是一个ImageBitmapSource(也就是CanvasImageSource,Blob或ImageData)。
对于FaceDetector和BarcodeDetector,传入可选参数给探测器的constructor,可以给底层的原生探测器透传参数。