机器人视觉与感知
语义分割
语义分割是这样一种视觉任务:给一张图像里每一个像素都涂上一个标签,说明它属于哪一类东西。系统不是在汽车外面松松地画一个框,而是针对画面里的每一个小点,判断它是马路、天空、汽车、树木还是人——从而生成一张严丝合缝盖在照片上的“按编号填色”地图。如果说目标检测给你的是一个粗略的矩形,那么分割勾勒的则是万物真正的轮廓,细到一片树叶的锯齿边缘、或一道路缘的弧线。
“语义”这个词,只是说这些标签讲的是“含义”、是东西的类别,而不是一个个具体的身份。所以在一幅街景里,所有汽车都被涂成同一种“汽车”颜色,所有行人都被涂成同一种“人”颜色;语义分割并不费心去把第一辆车和第二辆车分开。(把一个个具体个体区分开来,是一项相关但不同的任务,叫做实例分割。)这张精确到像素的类别地图,正是自动驾驶汽车所需要的——当它要分毫不差地知道:可行驶的马路在哪里到头、人行道又从哪里开始。
和其他现代视觉任务一样,语义分割也是用神经网络来完成的,这些网络是在人类逐个像素辛苦手工标注好的图像上训练出来的。网络把整张图读进去,一次性地为每一个像素输出一个标签。对机器人而言,这种稠密的理解能够支撑导航(哪些是我可以滚过去的地面?)、操作(这个物体的表面究竟在哪里?),以及在人和障碍物周围安全地工作。
自动驾驶汽车的分割网络会把实时摄像头画面涂色:马路涂成紫色、人行道涂成粉色、行人涂成红色——好让规划器只在紫色区域上行驶,并远远避开红色。
每个像素都有一个类别颜色——一张关于整个场景含义的地图。
语义分割会把同一类的所有物体合并成一个标签;实例分割则更进一步,把每一个具体的物体都分开。
又称
另见