Yes, it can be done using NPN transistors, however you would need two, not one.
You would basically be using one NPN to convert your push-pull output into an open-collector output. This though has the effect of inverting the digital signal, so you would need a second NPN to act as an inverter:
However, that is a messy way to do it.
The simplest way is to use a logic chip that can accept a 0-3.3v input signal while running at 5v and output a 0-5v signal. Something like a 74CH08 AND gate chip - pretty common and cheap. Just link 2 inputs together, and it forms a simple buffer. Power it from 5V so the output is at the right level for your camera.
Technically: From the 74HC08 data sheet: Vih (input HIGH voltage threshold) at 6V is just 3.2v At 4.5V the Vih is a mere 2.4v. So, with a 5V supply the Vih should be somewhere between those two figures - well within range of a 3.3v Arduino.