Are there any easy ways to create annotated training images for object detection?
From what I read in the papers and my experience, the trend lately is to generate synthetic data using a photorealistic 3D graphics engine for automating the image labelling. The process would be:

Get a visually realistic 3D engine such as Unreal, Unity... any videogame engine would work
Build 3D models of the objects you want to detect (or ask for help to a 3D artist)
Build a 3D environment for placing the objects 3D models
Generate random instances of the objects in the environments with different environmental conditions: lighting, brightness, position, rotation...

Since you have the 3D model of the object and the whole control in the 3D engine you can annotate images, bounding boxes, pixels... or whatever stuff you want in an automated way.

This is an approach for automatic image labeling with synthetic data. Automating the labeling of real data is a challenge yet to be tackled.