Just as you can convert entire files from one charset to another, you can convert the filenames. For example:
convmv -f iso-8859-15 -t utf-8 -r .
would recursively convert all files in the current directory from iso-8859-1 charset into utf-8. Well, not exactly. To finally rename the files you need the
--notest flag. Otherwise
convmv will perform a dry run without any changes.