The easiest method is data pixel count in vertical direction i.e., vertical histogram based. But the final decision should be taken for the purpose you are looking into. If your purpose is to design algorithm for complex data then obviously it will not work. In that case you may look for fuzzy membership function based approach, contour based approach etc
I was working on commercial project focused on separated alpha-numerical characters recognition in 1992-1993. We used structural (graph) representation that aproximated shapes of the letters. The efficiency was 89% (each mistake was multipled by 10 to calculate this efficiency). This efficiency for unconstrained character recognition system was significantly higher then the one that was bought by IBM that time.
Then I switched to cript recognition, but I reversed the tipical approach - the segmentation problem was moved from preprocessing to graph-grammar parsing (almost equivalent to structural pattern recognition). This appoach was not commerialized. Please contact me directly if you would like to know more.