I happened to see my old friend in the train.
この文の see は、「会う」という意味にも「見かける」という意味にも取ることができると思います。それがどちらだったかは、この1つの文からでは判断ができません。
目撃する、という意味を持つ witness という動詞は、何かを見届ける、何かの証拠としてそれを見る、という感じで、単なる「見かける」に比べて、ちょっと特殊な意味がありますので、電車で旧友を目撃した、と言うときにはあまりそぐわないことばだと思います。