parser.add_option('--decode', dest='decode', action='store_true', default=False, help='режим декодирования') parser.add_option('--times', dest='times', action='store', default=1, type='int', help='сколько раз выполнить преобразование') options, args = parser.parse_args() filename = ''.join(options.input.split('.')[:-1]) type = options.input.split('.')[-1] proc = ImageProcessor() try: if options.encode or options.decode: if options.encode: image = proc.read(options.input) result = proc.haar_encode(image, options.times) else: image = proc.read(options.input, compressed=True) result = proc.haar_decode(image, options.times) if not options.output: filename_output = filename + '_tmp.' + type else: filename_output = options.output print('>>>', result.pixels_raw.shape) proc.write(filename_output, result)
type='str', help='путь к файлу, который следует записать.') parser.add_option('--kernel', dest='kernel', action='store', default=None, help='Путь к текстовому файлу с ядром.') options, args = parser.parse_args() filename = ''.join(options.input.split('.')[:-1]) type = options.input.split('.')[-1] proc = ImageProcessor() try: image = proc.read(options.input) with open(options.kernel, 'r') as f: kernel = [[float(value) for value in line.split()] for line in f.readlines()] result = proc.convolve(image, kernel) result = proc.crop_image(result, top=len(kernel), left=len(kernel)) if not options.output: filename_output = filename + '_tmp.' + type else: filename_output = options.output proc.write(filename_output, result) print('Файл {} успешно записан.'.format(filename_output))