hello world

依赖

DynamicTable 依赖于 Adapter 的内置的 node_physical_blocks 插件:

为了运行node_physical_blocks 插件,你的本地需要具备 Python 环境

第一次运行node_physical_blocks 插件,会自动安装依赖: opencv-contrib-python, 依赖比较大(> 60MB), 耐心等待 1 分钟左右,安装完成会会弹出通知。

提醒

如果自动安装没有成功,你可以在命令行里手动安装: pip install opencv-contrib-python --user

node_physical_blocks正常运行之后,就可以到 Scratch 中编程。

Scratch

打开这两个插件:

  • ImageData
  • Physical Blocks

ImageData 负责与 Scratch 舞台区数据交互,诸如获取舞台区的截图或者视频数据等。

我们可以将这些数据传递到 Adapter 处理: node_physical_blocks便是一个能够处理 ImageData 数据的插件,你也可以自定义插件。

获取视频中的 marker 信息

首先我们要开启摄像头(镜像开启)

获取 marker id 列表

使用该积木可以获得摄像头里所有的 marker 的 id 列表

可以看到视频里,一共有 4 个 marker,从左到右 id 分别为 28, 27,26,25

利用这个积木,可以构建 单词拼写程序

获取 marker 旋转角

使用该积木可以获得摄像头里某个 marker 的旋转角

Scratch-marker-angle-demo.sb3

利用旋转角可以构建纸糊方向盘:

获取 marker 位置

使用该积木可以获得摄像头里某个 marker 的位置信息