



"""simple docstring"""






from cva import destroyAllWindows, imread, imshow, waitKey






def 	snake_case__  (						__lowerCamelCase							:       List[Any]				,						__lowerCamelCase							:       int      ):
			"""simple docstring"""
			lowerCamelCase__      ,  lowerCamelCase__						:						Union[str, Any]						      =img.shape[0], img.shape[1]

			def to_grayscale(__lowerCamelCase							:       Union[str, Any]				,						__lowerCamelCase							:       List[str]				,						__lowerCamelCase							:       Optional[Any]      ):
						return 0.21_26 * red + 0.5_87 * green + 0.1_14 * blue

			def normalize(__lowerCamelCase							:       Tuple      ):
						return min(__lowerCamelCase				,						255      )

			for i in range(__lowerCamelCase      ):
						for j in range(__lowerCamelCase      ):
									lowerCamelCase__						:						str						      =int(to_grayscale(*img[i][j]      )      )
									lowerCamelCase__						:						Tuple						      =[
									    normalize(__lowerCamelCase      ),
									    normalize(greyscale + factor      ),
									    normalize(greyscale + 2 * factor      ),
									]

			return img


if __name__ == "__main__":
		# read original image
		_lowercase					:					List[str] 		=		{
		    percentage: imread("image_data/lena.jpg", 1) for percentage in (1_0, 2_0, 3_0, 4_0)
		}

		for percentage, img in images.items():
				make_sepia(img, percentage)

		for percentage, img in images.items():
				imshow(f'Original image with sepia (factor: {percentage})', img)

		waitKey(0)
		destroyAllWindows()





'''simple docstring'''




import json
import os
import tempfile

import datasets
from utils import generate_example_dataset, get_duration


__snake_case  : Dict		       =    500_000

__snake_case       ,       __snake_case  : List[str]		       =    os.path.split(__file__)
__snake_case  : Optional[Any]		       =    os.path.join(RESULTS_BASEPATH, 'results', RESULTS_FILENAME.replace('.py', '.json'))





@get_duration
def 	_UpperCAmelCase       (				_UpperCamelCase       :      datasets.Dataset  )      -> Union[str, Any]:
    A_      =  dataset.select(range(0,  len(_UpperCamelCase  ),  2  )  )





@get_duration
def 	_UpperCAmelCase       (				_UpperCamelCase       :      datasets.Dataset  )      -> str:
    A_      =  dataset.sort('''numbers'''  )





@get_duration
def 	_UpperCAmelCase       (				_UpperCamelCase       :      datasets.Dataset  )      -> str:
    A_      =  dataset.shuffle()





@get_duration
def 	_UpperCAmelCase       (				_UpperCamelCase       :      datasets.Dataset  )      -> Optional[Any]:
    A_      =  dataset.train_test_split(0.1  )





@get_duration
def 	_UpperCAmelCase       (				_UpperCamelCase       :      datasets.Dataset,  _UpperCamelCase       :      Optional[int]=10  )      -> Dict:
    for shard_id in range(_UpperCamelCase  ):
        A_      =  dataset.shard(_UpperCamelCase,  _UpperCamelCase  )





def 	_UpperCAmelCase       (				)      -> Any:
    A_      =  {'''num examples''': SPEED_TEST_N_EXAMPLES}
    A_      =  (select, sort, shuffle, train_test_split, shard)
    with tempfile.TemporaryDirectory() as tmp_dir:
        print('''generating dataset'''  )
        A_      =  datasets.Features({'''text''': datasets.Value('''string'''  ), '''numbers''': datasets.Value('''float32'''  )}  )
        A_      =  generate_example_dataset(
            os.path.join(_UpperCamelCase,  '''dataset.arrow'''  ),  _UpperCamelCase,  num_examples=_UpperCamelCase  )
        print('''Functions'''  )
        for func in functions:
            print(func.__name__  )
            A_      =  func(_UpperCamelCase  )

    with open(_UpperCamelCase,  '''wb'''  ) as f:
        f.write(json.dumps(_UpperCamelCase  ).encode('''utf-8'''  )  )


if __name__ == "__main__":  # useful to run the profiler
  benchmark_indices_mapping()






