Não testado, mas você pode fazer algo como:
printf "%s\n" *.jpg | cut -d_ -f1 | sort -u | while IFS= read -r prefix; do
files=( "$prefix"*.jpg )
if [[ "${#files[@]}" -ne 15 ]]; then
echo rm "$prefix"*
fi
done
Ele encontra a lista de prefixos exclusivos e, para cada um, coloca a lista de arquivos em uma matriz: se o tamanho da matriz não for 15, remova.