Um programa de limpeza semi-automático para fotos do quadro branco. É capaz de interface o gphoto2 no Linux.
O programa usa uma interface de usuário do tipo assistente com quatro visualizações em geral.
Visualização 1: Na primeira visualização, você seleciona a parte da imagem de entrada que deseja processar.

Visualização 2: Depois, o usuário pode escolher alguns valores de parâmetros que influenciam a maneira como a etapa de saturação de cores que torna o plano de fundo da imagem totalmente branco. Eles devem ser adaptados com base na limpeza do quadro branco e na iluminação ao fazer a fotografia. Após cada alteração da configuração, a visualização é atualizada.

View 3: Esta é apenas uma "Aguarda da visualização", enquanto a imagem final em resolução total é calculada.

View 4: Nesta quarta e última visualização, o usuário pode selecionar uma combinação de formato/resolução de saída de imagem específica com base em uma visualização ao vivo da qualidade da imagem resultante e nos tamanhos dos arquivos de imagem computados. Os tamanhos e visualizações da imagem são calculados em segundo plano enquanto essa visualização é mostrada.

Observe que este programa não possui botões para frente e para trás atualmente, e o comportamento do programa após a adição de botões para trás tem sido um estudo de caso em dois trabalhos científicos sobre a síntese reativa do código do programa para interface gráfica do usuário.
O BBPhoto está escrito em Java 6. Para construir o programa, (1) compilar -o com a ferramenta "Ant" executando "Ant" no repositório checado, ou (2) importá -lo como um projeto no IDE NetBeans e usar o comando de construção da NetBeans. O arquivo "dist/bbphoto.jar" será criado como resultado.
Existem dois modos de operações para o programa BBPhoto.
Nos dois casos, o comando para iniciá -lo é "java -xmx512m -jar bbphoto.jar" mais o nome do arquivo opcional. A ferramenta vem com uma interface gráfica do usuário (GUI). Atualmente, não há opção para usar o programa sem a GUI.
A primeira tela do BBPhoto exibirá uma interface de seleção de pontos. Aqui, você pode selecionar os limites da parte da imagem que deseja usar. Comece com o canto superior esquerdo e prossiga no sentido horário. Depois que quatro pontos foram selecionados, o botão "prossiga" no canto inferior direito da imagem se torna ativo. Clicar em ele permitirá que você prossiga para o menu de configuração da qualidade da imagem. Use os dois sliders para ajustar a qualidade da imagem. Sempre que uma nova configuração deslizante foi selecionada, a imagem de visualização acima dos controles deslizantes é atualizada. Isso pode levar alguns segundos. Clique em "prossiga" para confirmar a seleção.
Posteriormente, uma caixa de informações "aguarde" é mostrada enquanto uma versão de resolução completa da imagem processada é calculada. Para imagens muito grandes, isso pode levar a ordem de minutos, mesmo em computadores modernos. Posteriormente, uma janela de seleção de resolução é mostrada. Ele permite selecionar uma resolução reduzida da imagem processada junto com um formato de arquivo. A visualização mostra o tamanho do arquivo resultante. Selecionar uma combinação de tipo de arquivo/resolução e clicar no botão "Salvar" permite gravar a imagem para arquivar.
Ao fechar a janela depois de salvar um arquivo e iniciar o BBPhoto sem nome de arquivo, a ferramenta exibe uma caixa de diálogo para perguntar ao usuário se a última imagem na câmera deve ser excluída. A caixa de diálogo é mostrada apenas nesta combinação.