ONe possible way would be to use a plain object as thin as you can get it and as long as the area of your map.
Have it always prorudeing from the start of the camers point directly outwards fomr the center of the screen (will need to have its x.y.z. and roattions updated in the main loop)
make it invisible and then doa simple object colision, ie if the plain object touches the other object then the camera has got to be pointing at it.
you can use the same device for any object you have in your program as the camera moces around.
ok if that doent make sence think of it this way. Get a long thin straight stick, hold it up to your nose pointing directly away from you, hold it there and as you turn your head the stick always poinst to the center of your vision and anything in the way will get struck by the stick.
I said to use a plain object cos its the object with the least amount of polys, a flat stick if you will
if you want a wider range of touch for the stick so it stikes the object just as it comes into view then maybe a cylinder object would be better and you can changes its diameter to fit the scree/camera area
One possible idea.