The implementation of a particle filter (PF) for vision-based bearing-only simultaneous localization and mapping (SLAM) of a mobile robot in an unstructured indoor environment is presented in this paper. Variations, using techniques from the genetic algorithm (GA), to standard PF procedures are proposed to alleviate the sample impoverishment problem. A monochrome CCD camera mounted on the robot is used as the measuring device and a measure on the image quality is incorporated into data association and PF update. Since the bearing-only measurement does not contain range information, we add a pseudo range to the measurement during landmark initialization as a hypothesised pair and the non-promising landmark is removed by a map management strategy. Simulation and experimental results from an implementation using real-life data acquired from a Pioneer robot are included to demonstrate the effectiveness of our approach.