/**
 * Contrast Characterization Unit Test Cases.
 */
TInt32 test_metric_contrast_characterization(TUint8* aDirPath)
{
    TAlgoError ret = EErrorNone;
    TAlgoMetricParams aMetricParams;
    TUint8 dir[128];
    TUint8 dir1[128];

    aMetricParams.iErrorTolerance.iErrorToleranceR = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 0;
    aMetricParams.iType = ETypeContrast;
    aMetricParams.iTestCoordinates.iStartIndexX = 0;
    aMetricParams.iTestCoordinates.iStartIndexY = 0;
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;

    ALGO_Log_0("*************CONTRAST METRIC TEST 1************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Contrast\\CONTRAST_IM1_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Contrast\\CONTRAST_IM1_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret);

    ALGO_Log_0("*************CONTRAST METRIC TEST 2************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Contrast\\CONTRAST_IM2_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Contrast\\CONTRAST_IM2_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret);

    ALGO_Log_0("*************CONTRAST METRIC TEST 3************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Contrast\\CONTRAST_IM3_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Contrast\\CONTRAST_IM3_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret);

    ALGO_Log_0("*************CONTRAST METRIC TEST 4************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Contrast\\CONTRAST_IM4_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Contrast\\CONTRAST_IM4_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret);

    ALGO_Log_0("*************CONTRAST METRIC TEST 5************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Contrast\\CONTRAST_IM5_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Contrast\\CONTRAST_IM5_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret);

    return 0;
}
Example #2
0
/**
 * Gamma Characterization Unit Test Cases.
 */
TInt32 test_metric_gamma_characterization(TUint8* aDirPath)
    {
    TAlgoError ret = EErrorNone; 
	TAlgoMetricParams aMetricParams;
    TUint8 dir[128];
    TUint8 dir1[128]; 
    TUint32 memDisable = 0;
    TUint32 memEnable = 0;
    //TAlgoImageParams aImageParams;
    TUint64 size = 0;
   
	aMetricParams.iErrorTolerance.iErrorToleranceR = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 0;
    aMetricParams.iType = ETypeGamma;
    aMetricParams.iTestCoordinates.iStartIndexX = 0;
    aMetricParams.iTestCoordinates.iStartIndexY = 0;
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;

    /*
    ALGO_Log_0("*************GAMMA METRIC TEST 1************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Gamma\\GAMMA_IM1_Disable.gam");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Gamma\\GAMMA_IM1_Enable.gam");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************GAMMA METRIC TEST 2************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Gamma\\GAMMA_IM2_Disable.yuv");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Gamma\\GAMMA_IM2_Enable.yuv");
    aImageParams.iImageFormat = EImageFormatYUV422Interleaved;
    aImageParams.iImageHeight = 480;
    aImageParams.iImageWidth = 640;
    aImageParams.iImageHeaderLength = 0;
    ret =  ValidationMetricInterfaceWithFiles(&aImageParams, &aImageParams, dir, dir1, &aMetricParams );

    Metrcis_Print_Result(ret);
    */

    ALGO_Log_0("*************GAMMA METRIC TEST 3************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Gamma\\GAMMA_IM3_Disable.gam");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Gamma\\GAMMA_IM3_Enable.gam");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    return 0;
    }
/**
 * Spatial Similar Unit Test Cases.
 */
TInt32 test_metric_spatialsimilar(char *aFileNameImageEffectDisable, char *aFileNameImageEffectEnable)
   {
    TAlgoError ret = EErrorNone; 
	TAlgoMetricParams aMetricParams;
	
    ALGO_Log_0("************* SPATIAL SIMILAR METRIC TEST ************ \n");

	aMetricParams.iErrorTolerance.iErrorToleranceR = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 0;
    aMetricParams.iType = ETypeSpatialSimilar;
	aMetricParams.iMetricRange.iRangeR = 0;
	aMetricParams.iMetricRange.iRangeG = 0;
	aMetricParams.iMetricRange.iRangeB = 0;
    aMetricParams.iParams = (TAny*)NULL;

	ret = ValidationMetricInterfaceWithFiles(NULL, NULL, aFileNameImageEffectDisable, aFileNameImageEffectEnable, &aMetricParams);
	Metrcis_Print_Result(ret);

	return 0;
    }
/**
 * Color Tone Characterization Unit Test Cases.
 */
TInt32 test_metric_colortone_characterization(TUint8* aDirPath)
    {
    TAlgoError ret = EErrorNone; 
	TAlgoMetricParams aMetricParams;
    TUint8 dir[128];
    TUint8 dir1[128];   
    TAlgoMatrix matrix;
    TUint32 memDisable = 0;
    TUint32 memEnable = 0;
    //TUint8* bufferEffectDisable;
    //TUint8* bufferEffectEnable;
    //TAlgoImageParams aImageParams;
    //TAny* file;
    //TAny* file1;
    TUint64 size = 0;

	aMetricParams.iErrorTolerance.iErrorToleranceR = 20;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 20;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 20;
    aMetricParams.iType = ETypeColorTone;
    aMetricParams.iTestCoordinates.iStartIndexX = 0;
    aMetricParams.iTestCoordinates.iStartIndexY = 0;
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;

    matrix.iMatrix[0][0] = (TReal32)2.5415;
    matrix.iMatrix[0][1] = (TReal32)-1.5587;
    matrix.iMatrix[0][2] = (TReal32)0.0173;
    matrix.iMatrix[1][0] = (TReal32)-0.6080;
    matrix.iMatrix[1][1] = (TReal32)2.2818;
    matrix.iMatrix[1][2] = (TReal32)-0.6739;
    matrix.iMatrix[2][0] = (TReal32)-0.0365;
    matrix.iMatrix[2][1] = (TReal32)-0.6038;
    matrix.iMatrix[2][2] = (TReal32)1.6403;

    aMetricParams.iParams = &matrix;

    ALGO_Log_0("*************COLOR TONE METRIC TEST 1************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\ColorTone\\COLORTONE_IM1_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\ColorTone\\COLORTONE_IM1_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************COLOR TONE METRIC TEST 2************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\ColorTone\\COLORTONE_IM2_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\ColorTone\\COLORTONE_IM2_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************COLOR TONE METRIC TEST 3************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\ColorTone\\COLORTONE_IM3_Disable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\ColorTone\\COLORTONE_IM3_Enable.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);


	Metrcis_Print_Result(ret);

   	return 0;
    }
/**
 * centerfieldofview Unit Test Cases.
 */
TInt32 test_metric_centerfieldofview_characterization(TUint8* aDirPath)
    {

    TAlgoError ret = EErrorNone; 
	TAlgoMetricParams aMetricParams;
	TInt8 *pString = NULL;
	TInt8 *pHandle = NULL;
	TInt32 nX = 0, nY = 0, nX1 = 0, nY1 = 0;
    
    TUint8 dir[128];
    TUint8 dir1[128];    
	TAlgoParamCenterFieldOfView paramCenterFieldOfView;
	char cfow_patern[]="_cfow_";
    
    ALGO_Log_0("*************CENTERFIELDOFVIEW METRIC TEST 1************ \n");
	pString = dir;
    AlgoStrcpy(pString, aDirPath);
    AlgoStrcat(pString, "cfow//frame_1__reso_320_x_240_id_001_format_bmp_cfow_0_0.bmp");
	pHandle = strstr(pString, cfow_patern);
	if(pHandle)
	{
		pHandle += strlen(cfow_patern);
		sscanf (pHandle,"%d_%d", &nX, &nY);
		ALGO_Log_2 ("detected nX %d , nY %d\n", nX, nY);
	}
	else
	{
		ALGO_Log_0("cfow not recognazied\n");
	}
	pString = dir1;
    AlgoStrcpy(pString, aDirPath);
    AlgoStrcat(pString, "cfow//frame_1__reso_320_x_240_id_002_format_bmp_cfow_16_32.bmp");
	pHandle = strstr(pString, cfow_patern);
	if(pHandle)
	{
		pHandle += strlen(cfow_patern);
		sscanf (pHandle,"%d_%d", &nX1, &nY1);
		ALGO_Log_2 ("detected nX %d , nY %d\n", nX1, nY1);
	}
	else
	{
		ALGO_Log_0("cfow not recognazied\n");
	}
    aMetricParams.iType = ETypeCenterFieldOfView;
 	aMetricParams.iErrorTolerance.iErrorToleranceR = 5;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 0;
	aMetricParams.iMetricRange.iRangeR = 0;
	aMetricParams.iMetricRange.iRangeG = 0;
	aMetricParams.iMetricRange.iRangeB = 0;
    aMetricParams.iTestCoordinates.iStartIndexX = 0; // not used
    aMetricParams.iTestCoordinates.iStartIndexY = 0; // not used
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 0; // size max of common widow is computed by metric
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 0; // size max of common widow is computed by metric
	
	paramCenterFieldOfView.iX		= nX1 - nX;
	paramCenterFieldOfView.iY		= nY1 - nY;
	paramCenterFieldOfView.iTolerance		= 5;
	aMetricParams.iParams = &paramCenterFieldOfView;   
	
	ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 



    ALGO_Log_0("*************CENTERFIELDOFVIEW METRIC TEST 2************ \n");
	pString = dir;
    AlgoStrcpy(pString, aDirPath);
    AlgoStrcat(pString, "cfow//frame_1__reso_320_x_240_id_001_format_bmp_cfow_0_0.bmp");
	pHandle = strstr(pString, cfow_patern);
	if(pHandle)
	{
		pHandle += strlen(cfow_patern);
		sscanf (pHandle,"%d_%d", &nX, &nY);
		ALGO_Log_2 ("detected nX %d , nY %d\n", nX, nY);
	}
	else
	{
		ALGO_Log_0("cfow not recognazied\n");
	}
	pString = dir1;
    AlgoStrcpy(pString, aDirPath);
    AlgoStrcat(pString, "cfow//frame_1__reso_320_x_240_id_002_format_bmp_cfow_16_-32.bmp");
	pHandle = strstr(pString, cfow_patern);
	if(pHandle)
	{
		pHandle += strlen(cfow_patern);
		sscanf (pHandle,"%d_%d", &nX1, &nY1);
		ALGO_Log_2 ("detected nX %d , nY %d\n", nX1, nY1);
	}
	else
	{
		ALGO_Log_0("cfow not recognazied\n");
	}
    aMetricParams.iType = ETypeCenterFieldOfView;
 	aMetricParams.iErrorTolerance.iErrorToleranceR = 5;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 0;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 0;
	aMetricParams.iMetricRange.iRangeR = 0;
	aMetricParams.iMetricRange.iRangeG = 0;
	aMetricParams.iMetricRange.iRangeB = 0;
    aMetricParams.iTestCoordinates.iStartIndexX = 0; // not used
    aMetricParams.iTestCoordinates.iStartIndexY = 0; // not used
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 0; // size max of common widow is computed by metric
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 0; // size max of common widow is computed by metric
	
	paramCenterFieldOfView.iX		= nX1 - nX;
	paramCenterFieldOfView.iY		= nY1 - nY;
	paramCenterFieldOfView.iTolerance		= 5;
	aMetricParams.iParams = &paramCenterFieldOfView;   
	
	ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 
	return 0;
    }
/**
 * Negative Characterization Unit Test Cases.
 */
TInt32 test_metric_negative_characterization(TUint8* aDirPath)
    {
    TAlgoError ret = EErrorNone; 
    TAlgoMetricRange metricRange;
	TAlgoMetricParams aMetricParams;
    TUint8 dir[128];
    TUint8 dir1[128];  

	metricRange.iRangeR = 0;
    metricRange.iRangeG = 0;
    metricRange.iRangeB = 0;

    aMetricParams.iErrorTolerance.iErrorToleranceR = 2;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 2;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 2;
    aMetricParams.iType = ETypeNegativeImage;
    aMetricParams.iMetricRange = metricRange;
    aMetricParams.iTestCoordinates.iStartIndexX = 0;
    aMetricParams.iTestCoordinates.iStartIndexY = 0;
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 2048;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 1536;

    ALGO_Log_0("*************NEGATIVE METRIC TEST 1************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg1\\Input_rgb16_2048_1536.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg1\\Output1_rgb16_2048_1536.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************NEGATIVE METRIC TEST 2************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg1\\Input_rgb16_2048_1536.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg1\\Output2_rgb16_2048_1536.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);
   
    ALGO_Log_0("*************NEGATIVE METRIC TEST 3************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg1\\Input_rgb16_2048_1536.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg1\\Output3_rgb16_2048_1536.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************NEGATIVE METRIC TEST 4************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg2\\2592_1944_ColorTone_Normal.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg2\\2592_1944_ColorTone_Negative.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;
    
    ALGO_Log_0("*************NEGATIVE METRIC TEST 5************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg3\\Image_no_effect.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg3\\Image_negative_enabled.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************NEGATIVE METRIC TEST 6************ \n");
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg4\\Image_normal.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg4\\Image_negative.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************NEGATIVE METRIC TEST 7************ \n");
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg5\\Image_normal.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg5\\Image_negative.bmp");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);

    ALGO_Log_0("*************NEGATIVE METRIC TEST 8************ \n");
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg6\\Image_Normal.gam");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg6\\Image_Negative.gam");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);
    
    ALGO_Log_0("*************NEGATIVE METRIC TEST 9************ \n");
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\Negative\\neg7\\Image_normal.gam");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\Negative\\neg7\\Image_negative.gam");
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
	Metrcis_Print_Result(ret);
    
	return 0;
    }
/**
 * Spatial Similar Unit Test Cases.
 */
TInt32 test_metric_spatialsimilar_characterization(TUint8* aDirPath)
    {
    TAlgoError ret = EErrorNone; 
	TAlgoMetricParams aMetricParams;
    
    TUint8 dir[128];
    TUint8 dir1[128];    


	aMetricParams.iErrorTolerance.iErrorToleranceR = 1;
    aMetricParams.iErrorTolerance.iErrorToleranceG = 1;
    aMetricParams.iErrorTolerance.iErrorToleranceB = 1;
    aMetricParams.iTestCoordinates.iStartIndexX = 0;
    aMetricParams.iTestCoordinates.iStartIndexY = 0;
    aMetricParams.iTestCoordinates.iPixelsToGrabX = 640;
    aMetricParams.iTestCoordinates.iPixelsToGrabY = 480;
    
    ALGO_Log_0("*************SPATIAL SIMILAR METRIC TEST 1************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\SpatialSimilar\\SS_IM1_Enable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\SpatialSimilar\\SS_IM1_Disable.bmp");
    aMetricParams.iType = ETypeSpatialSimilar;
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 

    ALGO_Log_0("*************SPATIAL SIMILAR METRIC TEST 2************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\SpatialSimilar\\SS_IM2_Enable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\SpatialSimilar\\SS_IM2_Disable.bmp");
    aMetricParams.iType = ETypeSpatialSimilar;
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 
    
    ALGO_Log_0("*************SPATIAL SIMILAR METRIC TEST 3************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\SpatialSimilar\\SS_IM3_Enable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\SpatialSimilar\\SS_IM3_Disable.bmp");
    aMetricParams.iType = ETypeSpatialSimilar;
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 
    
    ALGO_Log_0("*************SPATIAL SIMILAR METRIC TEST 4************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\SpatialSimilar\\SS_IM4_Enable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\SpatialSimilar\\SS_IM4_Disable.bmp");
    aMetricParams.iType = ETypeSpatialSimilar;
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 
   
    ALGO_Log_0("*************SPATIAL SIMILAR METRIC TEST 5************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\SpatialSimilar\\SS_IM5_Enable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\SpatialSimilar\\SS_IM5_Disable.bmp");
    aMetricParams.iType = ETypeSpatialSimilar;
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 

    ALGO_Log_0("*************SPATIAL SIMILAR METRIC TEST 6************ \n");
    AlgoStrcpy(dir, aDirPath);
    AlgoStrcat(dir, "\\SpatialSimilar\\SS_IM6_Enable.bmp");
    AlgoStrcpy(dir1, aDirPath);
    AlgoStrcat(dir1, "\\SpatialSimilar\\SS_IM6_Disable.bmp");
    aMetricParams.iType = ETypeSpatialSimilar;
    ret = ValidationMetricInterfaceWithFiles(NULL, NULL, dir, dir1, &aMetricParams );
    Metrcis_Print_Result(ret); 

  	return 0;
    }