def main(): options, args = parseOptions() tile_x = options.tile_x tile_y = options.tile_y frame = options.frame output = options.output filemask = options.filemask tile_files = [] tiles_lost = [] for i in xrange(0, (tile_x * tile_y)): filepath = filemask % (i, frame) if not os.path.exists(filepath): tiles_lost += [filepath] continue tile_files += [filepath] if len(tile_files) != (tile_x * tile_y): raise Exception("Tile not found: %s" % tiles_lost) #TODO: merge metadata from tiles spec = ImageBuf(str(tile_files[0])).spec() spec_e = ImageSpec(spec.full_width, spec.full_height, spec.nchannels, spec.format) extended = ImageBuf(spec_e) for filename in tile_files: img = ImageBuf(filename) ImageBufAlgo.paste(extended, img.xbegin, img.ybegin, img.zbegin, 0, img, nthreads=4) extended.write(output)
write(b, "flat.exr") # crop b = ImageBuf() ImageBufAlgo.crop(b, grid, oiio.ROI(50, 150, 200, 600)) write(b, "crop.tif") # cut b = ImageBuf() ImageBufAlgo.cut(b, grid, oiio.ROI(50, 150, 200, 600)) write(b, "cut.tif") # paste b = ImageBuf() b.copy(checker) ImageBufAlgo.paste(b, 150, 75, 0, 0, grid) write(b, "pasted.tif") # rotate90 b = ImageBuf() ImageBufAlgo.rotate90(b, ImageBuf("../oiiotool/image.tif")) write(b, "rotate90.tif") # rotate180 b = ImageBuf() ImageBufAlgo.rotate180(b, ImageBuf("../oiiotool/image.tif")) write(b, "rotate180.tif") # rotate270 b = ImageBuf() ImageBufAlgo.rotate270(b, ImageBuf("../oiiotool/image.tif"))
write(b, "flat.exr") # crop b = ImageBuf() ImageBufAlgo.crop(b, grid, oiio.ROI(50, 150, 200, 600)) write(b, "crop.tif") # cut b = ImageBuf() ImageBufAlgo.cut(b, grid, oiio.ROI(50, 150, 200, 600)) write(b, "cut.tif") # paste b = ImageBuf() b.copy(checker) ImageBufAlgo.paste(b, 150, 75, 0, 0, grid) write(b, "pasted.tif") # rotate90 b = ImageBuf() ImageBufAlgo.rotate90(b, ImageBuf("../oiiotool/image.tif")) write(b, "rotate90.tif") # rotate180 b = ImageBuf() ImageBufAlgo.rotate180(b, ImageBuf("../oiiotool/image.tif")) write(b, "rotate180.tif") # rotate270 b = ImageBuf() ImageBufAlgo.rotate270(b, ImageBuf("../oiiotool/image.tif"))