camera control

I am trying to make something but not sure of what components or things I must do to accomplish it so I will start by telling what I am trying to do:

I am wanting some sort of camera that connects to my laptop's usb and I would have an interface on which I can click the button "take picture" and the camera will snap a picture and store it in some given folder.

I am okay with C# or arduino's C. I am just not sure how to accomplish the hardware part mainly...

Where does the Arduino fit into this?

I was thinking maybe with the arduino I can control the camera’s direction as well as click but after further searches I have found arduino isn’t exactly good with a camera so I might just give up on this project.

twirap: I was thinking maybe with the arduino I can control the camera's direction as well as click but after further searches I have found arduino isn't exactly good with a camera so I might just give up on this project.

Arduino has no problem controlling a camera, like pan and tilt. The Arduino just isn't powerful enough to process an image.

you can easily make this if you're not concerned about writing your program in processing for example.

if you connect a webcam to your pc, as well as an arduino, then you can control the camera position with the arduino and some servos, while you snap the picture with the webcam and processing, without your arduino.

This way the arduino doesn't get involved in the image processing, it even doesn't know about the existence of the camera

twirap: I am trying to make something but not sure of what components or things I must do to accomplish it so I will start by telling what I am trying to do:

I am wanting some sort of camera that connects to my laptop's usb and I would have an interface on which I can click the button "take picture" and the camera will snap a picture and store it in some given folder.

I am okay with C# or arduino's C. I am just not sure how to accomplish the hardware part mainly...

You might want to tell us what camera you have. Some cameras have this capability already (called tethering). And you would use software either provided by the manufacturer or a third party to do the tethering. In addition to transferring to the PC, with some cameras, you can control it from android and apple smart phones. A few have wifi capability, and the pc can control the camera directly.

Some cameras take a wired or infrared shutter release that takes the picture. Here the Arduino can help, emulating the shutter release. There are several posts about ways to do this, and at least two commercial companies (triggertrap, cameraaxe) that sell both complete systems and Arduino shields to do this. Note, it only takes the picture, it doesn't transfer it up to the computer.

Users have figured out on some Canon cameras how to replace the firmware with their own to add various extensions (CHDK): http://chdk.wikia.com/wiki/CHDK, and you might be able to find an extension that does this. There are similar hacks for some Panasonic cameras, but my sense is it is pretty much limited to extending the movie mode on Panasonics.

If you don't have a camera with capabilities, it is possible to control a servo so that it presses the shutter button when the Arduino tells it (arduino would be listening to a command from the pc).

In order to transfer the file to the pc and you don't have full tethered support, if your camera uses SD cards, you could presumably get an Eye-fi card and have it wirelessly upload files as they are taken to the pc.