Purely rotation-based self-calibration receives the most attention among various self-calibration methods, owing to its algorithmic simplicity. However, it is actually impossible to ensure that the camera motion for this kind of self-calibration is a pure rotation, since the rotation center should-but unfortunately may never-completely coincide with the optical center with an unknown position. Almost all conventional pure rotation methods tend to ignore any translation, so the significant errors of calibration results could be inevitably introduced. We propose a practical and effective approach to improve the purely rotation-based self-calibration approach. The proposed approach accounts for translational offsets. According to the fact that the rotational angles between camera orientations have a very strong impact on the calibration errors from the translations, we compute the relative camera orientations prior to calibrating, then use different and very appropriate strategies for self-calibration in different angle circumstances, to achieve better calibration results. Both synthetic data and real data are used to test the proposed approach and very good results are obtained. Comparing the experimental results with those of conventional methods, the proposed approach significantly yields higher accuracy, and therefore reduces the calibration errors by the translations.