Skip to Main Content
A vision system is developed for a mobile cleaning robot to detect orientation, which can be used alone or with predicted motion to reduce localization error. By exploiting straight line features found in ceilings with suspended tiles, orientation is found in realtime with a desktop PC implementation. Simple techniques are applied to achieve realtime performance in a system which is suitable for implementation in an embedded system or DSP. Edge strengths and directions are first calculated. Points potentially belonging to line features are then found by applying a dynamically calculated global threshold designed to retain a fixed percentage of edge points, and the application of an edge thinning operation which implements a fast peak detection algorithm. The remaining edge points are then used to determine an initial orientation estimate. Orientations are found by detecting four peaks separated by 90/spl deg/ intervals in a contour-direction histogram. The orientation value is further refined by rejecting points which are not close to the main orientation estimate, and by removing points which are part of very short lines resulting from texture patterns rather than long straight line features. The theoretical basis, system design and prototype implementation, testing, and evaluation are described. The experimental results of integrating a prototype system with an experimental mobile robot are included.