关于人工智能:Google开源了可视化编程框架Visual-Blocks-for-ML

43次阅读

共计 1947 个字符,预计需要花费 5 分钟才能阅读完成。

Visual Blocks for ML 是一个由 Google 开发的开源可视化编程框架。它使你可能在易于应用的无代码图形编辑器中创立 ML 管道。

为了运行 Visual Blocks for ML。须要确保你的 GPU 是能够工作的。剩下的就是 clone 代码,而后运行,上面咱们做一个简略的介绍:

Visual Blocks for ML 是运行在反对 javascript 的 web 浏览器上,他次要应用 TensorFlow.js,也就是说并不是服务器的 GPU 资源而是本地的 GPU,所以数据不会上传,数据隐衷是被爱护的,然而对于其余框架可能就不反对了。

然而 Visual Blocks for ML 的最大特点是以可视化的形式一步一步地解释所产生的事件,并且可能帮忙你更快地迭代并最终更快地公布成绩,减速设计过程!

在本文中,我应用 ML 宰割模型为现有照片,增加贴纸和虚构背景,为例做个简略的介绍。

官网 DEMO

1、图像宰割

官网的 DEMO 是这里:https://visualblocks.withgoogle.com/#/demo,点击“Demo: Create Your Own”选项卡。

拜访这个页面时可能须要开启摄像头权限。

从左侧的组件库中加载图像,单击 Input 并将其拖拽到我的项目的底部面板中。

你能够抉择一个预加载的库存图片,上传你本人的照片

利用 Body segmentation model—不须要从组件库中拖动节点,只需单击并拖动示意输出图像节点输入的小圆圈,而后从可用候选节点列表中进行抉择或搜寻。

添 Mask visualizer ——为了显示宰割模型的输入,须要在工作流中增加一个 Mask 可视化器节点。从下面的 Body segmentation model 的输入拖动,并抉择举荐的节点:Mask visualizer。

如果到目前为止依照正确的步骤操作,应该会看到相似上面的截图:

利用 Face landmark model,咱们的指标是在头上增加一个贴纸,所以咱们须要创立一个模型来定位面部区域。Face landmark model 能够定义锚点,例如“face top”,这样咱们的贴纸就能搁置在正确的地位。

最初就是增加虚构贴纸:首先须要从左侧组件库中拖动一个新的输出图像节点,这里我应用了一个灯泡的图像。你能够用任何你想要的图片作为贴纸; 只有确保它有一个通明的背景。

而后须要从 Face landmark 输入中拖动并抉择 Virtual sticker。它须要两个更多的输出能力工作,贴纸图像和 Mask vizualiser。

最初就是调整“Scale”和“OffsetX/Y”参数来调整地位,后果如下图所示

在上图中,还应用 Landmark visualizer 进行了可视化,它能够将人脸的映射后果作为图片显示。

有了前景,咱们还能够应用 Image Mixer 增加背景图像:

从左侧的组件库中选取一个新的输出图像节点,也就是预加载的背景。

而后在左侧的组件库的 Effect 选项卡中拖动 Virtual sticker 节点,将下面咱们配置的最初节点输入新 Virtual sticker 节点的输出 Image1 中,而后将背景图像中连贯到输出 Image2 中。将下拉模式更改为“destination-over”。最初的后果如下:

这个工具还提供了导出或共享,能够将管道转换为.js 代码,以便其他人能够导入并从新创立工作流!

下面咱们应用的是官网的 DEMO,上面看看如何应用 Jupyter Notebook 本地运行。

Jupyter Notebook

咱们还能够在本人的环境中运行 Visual Blocks,这里应用 Colab,作为演示。

为 Visual block 装置必要的 Python 库:

 !pip install visualblocks

启动 Visual Blocks 服务器:

 import visualblocks
 server = visualblocks.Server()

而后就是开启 Visual Blocks UI:

 server.display()

当初就能够在本地创立工作流了,创立实现后能够点击“Save to Colab”,这样工作流的.js 将会保留在 Jupyter Notebook,以供未来运行:

如果你想本人尝试,能够应用上面这个文件。

https://avoid.overfit.cn/post/ed762d829e1d40d4968a1c4f24018663

总结

谷歌刚开源的这个 Visual Blocks for ML 我个人感觉对于理论利用没有什么意义,可能只是一个 TensorFlow.js 的技术展现,然而它钻研的方向应该是十分好的,比方对于摄像头来说,通过浏览器本地进行特征提取,而不须要再进行网络传说,从而节俭了带宽和服务器资源,并且用户的隐衷也失去了保障。这不就是联邦学习的一个方向么?有趣味的能够看看,还是挺好玩的。

正文完
 0