You could do something like this
find . -type f -iname \*zip -print0 | xargs -0 --max-args=1 --replace unzip {} \*.jpg \*.jpeg
This would look in the current folder and sub-folders for files called "*.zip", then for each one of them, individually (--max-args=1) the command unzip is called, appending \*.jpg \*.jpeg, thereby selecting the files to extract.
(If we select both *.jpeg and *.jpg files and some of these do not exist unzip may warn us about that. This can be safely ignored.)
If you wish to test what happens first, insert an echo:
find . -type f -iname \*zip -print0 | xargs -0 --max-args=1 --replace echo unzip {} \*.jpg \*.jpeg