Почему в libvips появляется ошибка блокировки «vips_region_prepare»?
Мне нужно прочитать очень большое изображение, поэтому я использую libvips для чтения пикселей из изображения с областью. Основной код показан ниже:
VipsImage *image = vips_image_new_from_file( filename, NULL );
VipsRegion *region = vips_region_new( image );
// ask for a 100x100 pixel region at 0x0 (top left)
VipsRect r = { left: 0, top: 0, width: 100, height: 100 };
if( vips_region_prepare( region, &r ) )
vips_error( ... );
VipsPel *pixel = VIPS_REGION_ADDR( region, x, y );
Приведенный выше код действительно работал, но когда я хочу прочитать форму пикселей
VipsRect r = { left: 100, top: 100, width: 100, height: 100 };
, это не работает. Другими словами, независимо от того, что я меняю начальную позицию, я могу читать только пиксельную форму.
VipsRect r = { left: 0, top: 0, width: 100, height: 100 };
. Если вы столкнулись с подобными проблемами, жду вашего ответа!