標籤:
[DESCRIPTION]
針對MT657X和MT6589平台上 Color shading 嚴重的問題,在MT6582之後的chip上匯入了TSF 功能。主要用來改善Color shading問題。
[SOLUTION]
1:如何進入工程模式。在撥號介面輸入” *#*#3646633#*#* ”(預設密碼)。如果客戶有修改進入工程模式輸入正確的密碼。進入工程模式。選擇ISO100, Pure Raw, Capture size 。
如果是AF項目,拍攝RawData 時指定AF的Step。
參考如下操作進行:
(1)AF頁面選取Through Focus Dump選項。
(2) 在Through Focus Dump選項中選擇子選項Manual configure。
(3) Start position和End position填入指定的Step (找模組廠確認一下這個項目使用的遠景3M左右的Step 為 A ,近景10cm左右的Step為B, 則指定的Step為C=(B+A)/2。或者可以使用fullScan自行測試A和B的數值,再計算出C的數值。下面的例子是A為200,B為900,則 指定位置為550 Step拍攝PureRawData) (使用CCT Gen色溫的Previewshading時,請使用MF方式指定550Step做高色溫Preview的Calibration)。
(4) 選擇Start Preview拍照。
2:提供TSF調試需要的RawData案。
按照第一步的要求進入工程模式, 加上毛玻璃拍攝D65, DNP, CWF, TL84, Alight這五個光源下的PureRawData。為了排除A light的 Banding影響,需要加上ND Filter。
為了使做出來的shading Cover度更高,建議同時提供如下這些色溫下加上毛玻璃後的PureRawData。
Sun (加上毛玻璃正對著正午太陽)
Sky(加上毛玻璃正對著沒有白雲的藍天)
DF光源(5500K色溫)
Horizon光源
D50光源(5000K色溫)
D75光源(7500K色溫)
假設A light 抓取到的 RawData 命名是Capture04000150ISOAuto__2592x1944_10_0.raw,則重新命名為如下格式:
g-A__2592x1944_10_0.raw 藍色字型 根據不同光源來命名。比如 CWF, D65, DNP 光源下的PureRawData被依次重新命名為: g-CWF__2592x1944_10_0.raw, gD65__2592x1944_10_0.raw , g-DNP__2592x1944_10_0.raw, 其它光源下的相類似。
3:提供GoldSimple和LimitSimple的PureRawData。
Golden Simple和Limit Simple的挑選,請參考FAQ11709。
Gold Simple參考上面的命名為g-CWF__2592x1944_10_0.raw或GoldenCWF__2592x1944_10_0.raw。 Limit Simple模組請命名為 UnitCWF__2592x1944_10_0.raw或u-CWF__2592x1944_10_0.raw。如果該模組有燒錄OTP,請提交CR時同步告知。
4:將上面重新命名後的RawData通過CR提供給貴司對應的Tuning Owner,做TSF的Calibration或者提供給Sensor FAE 直接去我司的lab做TSF的Calibration。產生產生camera_tsf_data.h和camera_tsf_para.h 件。
5:通過CR提供PureRawData的同時,請在CR上同步告知 Sensor 是那一顆?目前使用的OB值是多少?
6:根據Hal目錄下對應Sensor使用的camera_info_XXXX.h 檔案參考如下命名格式
#define INCLUDE_FILENAME_TSF_PARA "camera_tsf_para_XXXX.h"
#define INCLUDE_FILENAME_TSF_DATA "camera_tsf_data_XXXX.h"
將camera_tsf_data.h 和camera_tsf_para.h 檔案 ReName 成該sensor 對應的TSF 檔案。
7:對於95之前的Chip,請確認camera_tuning_para_XXXX.cpp 檔案中有無增加如下TSF的相關檔案匯入?
const CAMERA_TSF_TBL_STRUCT CAMERA_TSF_DEFAULT_VALUE =
{
#include INCLUDE_FILENAME_TSF_PARA
#include INCLUDE_FILENAME_TSF_DATA
};
impGetDefaultData(CAMERA_DATA_TYPE_ENUM const CameraDataType, VOID*const
pDataBuf, UINT32 const size) const
{
UINT32 dataSize[CAMERA_DATA_TYPE_NUM] =
{sizeof(NVRAM_CAMERA_ISP_PARAM_STRUCT),
sizeof(NVRAM_CAMERA_3A_STRUCT),
sizeof(NVRAM_CAMERA_SHADING_STRUCT),
sizeof(NVRAM_LENS_PARA_STRUCT),
sizeof(AE_PLINETABLE_T),
0,
sizeof(CAMERA_TSF_TBL_STRUCT)};
if (CameraDataType > CAMERA_DATA_TSF_TABLE || NULL == pDataBuf || (size <dataSize[CameraDataType]))
{
return 1;
}
switch(CameraDataType)
{
case CAMERA_NVRAM_DATA_ISP:
memcpy(pDataBuf,&CAMERA_ISP_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_ISP_PARAM_STRUCT));
break;
case CAMERA_NVRAM_DATA_3A:
memcpy(pDataBuf,&CAMERA_3A_NVRAM_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_3A_STRUCT));
break;
case CAMERA_NVRAM_DATA_SHADING:
memcpy(pDataBuf,&CAMERA_SHADING_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_SHADING_STRUCT));
break;
case CAMERA_DATA_AE_PLINETABLE:
memcpy(pDataBuf,&g_PlineTableMapping,sizeof(AE_PLINETABLE_T));
break;
case CAMERA_DATA_TSF_TABLE:
memcpy(pDataBuf,&CAMERA_TSF_DEFAULT_VALUE,sizeof(CAMERA_TSF_TBL_STRUCT));
break;
default:
break;
}
return 0;[/code]95 之後的平台已預設添加匯入TSF相關檔案代碼塊
[code]const CAMERA_TSF_TBL_STRUCT CAMERA_TSF_DEFAULT_VALUE =
{ {
1, // isTsfEn
2, // tsfCtIdx
{20, 2000, -110, -110, 512, 512, 512, 0} // rAWBInput[8]
},
#include INCLUDE_FILENAME_TSF_PARA
#include INCLUDE_FILENAME_TSF_DATA
};
typedef NSFeature::RAWSensorInfo<SENSOR_ID> SensorInfoSingleton_T;
namespace NSFeature {
template <>
UINT32
SensorInfoSingleton_T::
impGetDefaultData(CAMERA_DATA_TYPE_ENUM const CameraDataType, VOID*const
pDataBuf, UINT32 const size) const
{
UINT32 dataSize[CAMERA_DATA_TYPE_NUM] =
{sizeof(NVRAM_CAMERA_ISP_PARAM_STRUCT),
sizeof(NVRAM_CAMERA_3A_STRUCT),
sizeof(NVRAM_CAMERA_SHADING_STRUCT),
sizeof(NVRAM_LENS_PARA_STRUCT),
sizeof(AE_PLINETABLE_T),
0,
sizeof(CAMERA_TSF_TBL_STRUCT),
0,
sizeof(NVRAM_CAMERA_FEATURE_STRUCT)
};
if (CameraDataType > CAMERA_NVRAM_DATA_FEATURE || NULL == pDataBuf ||
(size < dataSize[CameraDataType]))
{
return 1;
}
switch(CameraDataType)
{
case CAMERA_NVRAM_DATA_ISP:
memcpy(pDataBuf,&CAMERA_ISP_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_ISP_PARAM_ST
RUCT));
break;
case CAMERA_NVRAM_DATA_3A:
memcpy(pDataBuf,&CAMERA_3A_NVRAM_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_3A_STRU
CT));
break;
case CAMERA_NVRAM_DATA_SHADING:
memcpy(pDataBuf,&CAMERA_SHADING_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_SHADING_
STRUCT));
break;
case CAMERA_DATA_AE_PLINETABLE:
memcpy(pDataBuf,&g_PlineTableMapping,sizeof(AE_PLINETABLE_T));
break;
case CAMERA_DATA_TSF_TABLE:
memcpy(pDataBuf,&CAMERA_TSF_DEFAULT_VALUE,sizeof(CAMERA_TSF_TBL_STRUCT));
break;
case CAMERA_NVRAM_DATA_FEATURE:
memcpy(pDataBuf,&CAMERA_FEATURE_DEFAULT_VALUE,sizeof(NVRAM_CAMERA_FEATURE_
STRUCT));
break;
default:
return 1;
}
return 0;
}}; // NSFeature
8:開啟TSF功能。
MT6595之前的平台(如MT6582、MT6592等)
修改檔案
mediatek\custom\[$platform,$project]\hal\camera\camera\tsf_tuning_custom.c
pp中的isEnableTSF函數,傳回值修改成MTRUE。如下:
MBOOL isEnableTSF(void)
{
return MTRUE;
}
MT6595之後的平台(如MT6595、MT6752_MT6732等)
修改檔案Tuning檔案 camera_tuning_para_XXXX.cpp,把isTsfEn改成1
const CAMERA_TSF_TBL_STRUCT CAMERA_TSF_DEFAULT_VALUE =
{ {
1, // isTsfEn
2, // tsfCtIdx
{20, 2000, -110, -110, 512, 512, 512, 0} // rAWBInput[8]
},
#include INCLUDE_FILENAME_TSF_PARA
#include INCLUDE_FILENAME_TSF_DATA
};
待整合參數後,確認參數有無生效 ?請參考 FAQ11142 。
不同chip , TSF 的進階客制化?請參考FAQ11301 。
Camera載入慢問題分析
[FAQ15082]Camera載入慢問題分析
Camera載入慢問題分析
A開機載入慢
Description:開機進入camera原廠模式很慢 ,或者是開機載入camera很慢
正常情況下search sensor耗時不會很久,大概200多ms的樣子,從 mainlog.boot.
可以通過搜尋索引鍵: impsearch, 來查看search時間。
01-01 00:08:56.379 232 232 D ImgSensorDrv: [impSearchSensor]SENSOR search start
01-01 00:08:56.640 232 232 D ImgSensorDrv: [impSearchSensor]SENSOR search end: 0x3
/[0x3087][1]/[0xffffff][255]/[0x5648][0]
出現異常的時候,
mainlog.boot的搜尋時間會很久,例如:
01-01 08:11:22.761 263 263 D ImgSensorDrv: [impSearchSensor]SENSOR search start
01-01 08:11:35.176 263 263 D ImgSensorDrv: [impSearchSensor]SENSOR search end: 0x3
/[0x841][0]/[0xffffff][255]/[0x2508][1]
對應到kernellog.boot往往會列印出
Line 14320: 01-01 00:11:24.988 <3>[ 11.732933]<2> (0)[263:mediase
此資料( TSF ( 改善Color Shading的問題 )功能的調試和開啟)轉載於 一牛網
資料需要自己去下載,有需要的可以去論壇上面自己下載
TSF ( 改善Color Shading的問題 )功能的調試和開啟