Capturar imagem pelo CCD

Pessoal, preciso de uma orientação sobre a complexidade de um programa que pretendo desenvolver.
Seria tipo o funcionamento de uma web cam… O software captura uma imagem por um CCD, geralmente camera conectada por um USB… e armazena esta imagem.
Nisso pretendo jogar em um tela e adicionar alguns dados nessa imagem, tipo: nome, data, nº controle. Isso para organização. Essa organização pensei em separá-las por pastas e sub-pastas.
O conceito básico é esse: Capturar uma foto e organiza-la.
O que preciso seria uma indicativa de tutorial ou API necessaria para trabalhar com a captura da imagem. Outra dúvida é sobre o banco de dados… Qual o mais indicado para trabalhar com imagens. Ou seria melhor apenas organizar em pastas através do próprio windows mesmo…
E outra, pretendo trabalhar com jframe e swing para deixa-lo mais amigavel…
Qualquer orientação já é bem-vinda!! Obrigado.