Что ж, более прямым способом получения размеров изображения является использование библиотеки изображений Python (в любом случае Django использует ее для get_image_dimensions в серверной части).
Итак, вы используете это как:
>> import Image
>> img = Image.open("foo.png")
>> img.size
(1729,828)
И ваше самое простое решение будет выглядеть примерно так:
img_dimensions = lambda f: Image.open(f).size
filenames = filter(lambda f: is_image_file(f) and img_dimensions(f)==my_dimensions, os.listdir(fullpath))
где my_dimensions - ваши размеры.
Проблема в том, что этот (как и любой другой метод, который проверяет размеры файла) фактически должен каждый раз открывать и читать изображения, что не стоит делать повторно. Поэтому, в зависимости от загрузки вашего приложения, вы, вероятно, захотите поместить img_dimensions () в реальную, отдельную функцию и запомните ее (http://code.activestate.com/recipes/52201-memoizing-cacheing-function-return-values/). или, если это будет обычной задачей, просто поместите изображения в папки предварительно заказано по размерам.