pour simplifier, dans ton cas, tu devrais avoir ceci :
images (id, fichier, etc.)
dessin (id, images_id, auteur, etc.)
photo (id, images_id, modele_apn, etc.)
Hors, dans ton cas, un dessin n'est rattaché qu'à un fichier image. Idem pour une photo. Donc "images_id" est unique. Il peut être utilisé comme clé primaire, ce qui rend inutile les "id" dans "dessin" et "photo". Par contre, image_id ne sera pas séquenciel dans ces deux tables, puisqu'une même fichier est soit une photo, soit un dessin.
La FK quand à elle (donc dessin.images_id = images.id et photo.images_id = images.id) permet de lier physiquement le dessin ou la photo à l'image.
Ainsi, impossible de supprimer un enregistrement de "images" sans avoir au préalable effacé l'enregistrement "photo" ou "dessin" correspondant. De même, impossible de créer un enregistrement "photo" ou "dessin" qui ne référence pas un fichier existant.
Deplus, la FK est utile lors des requêtes récupérant des données à la fois de images et dessin par exemple, puisque le lien entre les deux est connu par le SGBD. Dans ton cas simple, c'est pas forcément très intéressant, mais dans un cas plus complexe, cela peut éviter au SGBD de s'emmêler les pinceaux et ralentir considérablement.