Determinar se um arquivo de imagem é uma foto ou um gráfico?

Estou embarcando no que acredito ser um experimento ...

Inventar (ou descobrir, como já poderia existir) um método para determinar se um determinado arquivo de imagem, independentemente do formato, é uma foto ou um gráfico.

"Foto" significando algo como cenário, pessoas, etc."Gráfico" significando um ícone, ilustração, gráfico, captura de tela da interface do usuário etc.

Eu criei um bom script PHP / ImageMagick na semana passada, que extrai estatísticas de arquivos de imagem e aplica muito bem correções no balanço de branco, tom, vibração, nitidez, sombras / destaques.

Agora, eu gostaria de dar um passo adiante: detecte automaticamente o conteúdo da foto e aplique o processamento mencionado acima.

Um método que funcionou de maneira consistente até o momento foi determinar se a imagem tinha dados EXIF, mas isso só funciona em JPEGs. Isso não é infalível, é claro.

Existem métodos conhecidos via ImageMagick, GD ou outros para detectar uma "foto" versus um "gráfico"?

Eu tenho a capacidade de instalar / executar aplicativos além do ImageMagick & GD em nosso servidor da Web, se necessário.

Obrigado!

questionAnswers(1)

yourAnswerToTheQuestion