
    Ng                     X    d dl Z ddlT  e j        e          Z	 	 	 	 	 ddZ	 	 	 	 ddZdS )	    N   )*Fc           	      <   |s| s|s
J d            | pi } |pi }|s|t          |d          r|j        }i }d}|                     dd           	| d         }n|                     dd           | d         }|ddf}|                     dd           ]t          | d         t          t
          f          sJ t          | d                   dk    sJ t	          | d                   }|d         }n|                     d	d           /t          | d	         t                    sJ || d	         | d	         f}n?|r|                    d
d           	|d
         }n|                    dd           |d         }||d<   d|d<   |                     dd           r| d         |d<   n!|                    dd           r|d         |d<   t          |d<   |                     dd           ct	          | d                   }t          |          dk    r t	          t          |          |z            }nt          |          |k    sJ ||d<   n!|                    dd           r|d         |d<   t          |d<   |                     dd           ct	          | d                   }	t          |	          dk    r t	          t          |	          |z            }	nt          |	          |k    sJ |	|d<   n!|                    dd           r|d         |d<   t          }
|                     dd           r	| d         }
n?|r|                    dd           r	|d         }
n|                    dd           r|d         }
|
|d<   t          }|                     dd           r	| d         }n|                    dd           r|d         }||d<   |rat                              d           |                                D ]2\  }}t                              d|dt          |                     3|S )NzHAt least one of model, args, or pretrained_cfg required for data config.pretrained_cfg   in_chanschans   
input_sizer   img_sizetest_input_sizebicubicinterpolationmeanr   stdcrop_pcttest_crop_pct	crop_modez:Data processing configuration for current model + dataset:	z: )hasattrr   get
isinstancetuplelistlenintIMAGENET_DEFAULT_MEANIMAGENET_DEFAULT_STDDEFAULT_CROP_PCTDEFAULT_CROP_MODE_loggerinfoitemsstr)argsr   modeluse_test_sizeverbosedata_configr   r   r   r   r   r   nvs                 L/var/www/html/ai-engine/env/lib/python3.11/site-packages/timm/data/config.pyresolve_data_configr-      s    vDvNvv,vvvv:2D#)rN .e/GECS4T4T/-K Hxx
D!!-
#	'4	 	 	,=C%Jxxd##/$|,udm<<<<<4%&&!++++4-..
a=	*d	#	#	/$z*C00000Z 0$z2BC

 	6^//0A4HHT'(9:JJd33?'5J *K $-K xx&& G'+O'<O$$			OT	2	2 G'5o'FO$ 0Kxx)T&\""t99>>dh.//DDt99(((("F			FD	)	) 5,V4F .Kxxt(DK  s88q==S		H,--CCs88x'''' E			E4	(	( 3+E2E  Hxx
D!! 2
# 	2^//FF 	2%o6HH
D11 	2%j1H&K
 "IxxT"" 0%					K	.	. 0";/	(K 3QRRR%%'' 	3 	3DAqLLLqqq#a&&&12222    c                 *    t          ||| ||          S )ab   Resolve Model Data Config
    This is equivalent to resolve_data_config() but with arguments re-ordered to put model first.

    Args:
        model (nn.Module): the model instance
        args (dict): command line arguments / configuration in dict form (overrides pretrained_cfg)
        pretrained_cfg (dict): pretrained model config (overrides pretrained_cfg attached to model)
        use_test_size (bool): use the test time input resolution (if one exists) instead of default train resolution
        verbose (bool): enable extra logging of resolved values

    Returns:
        dictionary of config
    )r%   r   r&   r'   r(   )r-   )r&   r%   r   r'   r(   s        r,   resolve_model_data_configr0   g   s*    ( %#   r.   )NNNFF)NNFF)logging	constants	getLogger__name__r!   r-   r0    r.   r,   <module>r6      s         '
H
%
% \ \ \ \B      r.   