Updated:
質問
...
カメラ本体設定「画像回転」および「上下反転」により、YC画像の向きはどうなりますか?
...
回答
...
本体設定の「画像回転」および「上下反転」はライブ画に反映される設定です。
YC画像を回転させたい場合は、アプリ内で実装する必要があります。
Info |
---|
ambaCV5Xカメラではアプリ内の実装は不要です。 |
[設定] - [基本] - [基本] - [画像回転]の設定を「180°(上下反転)」とすると、ライブ画の表示は180度回転します。
...
PTZカメラの場合、[PTZ] - [カメラ動作] - [カメラ動作] - [上下反転]の設定を「ON」とすると、ライブ画の表示は上下反転します。
...
[画像回転]を「0°(OFF)」に設定した場合
[上下反転]を「OFF」に設定した場合
...
[画像回転]を「180°(上下反転)」に設定した場合
[画像回転]を「ON」に設定した場合
...
ライブ画と同じ向きの画像を扱いたい場合は、カメラの設定に応じてアプリ内で画像回転させる必要があります。
ADAM_CamPref_Get()およびADAM_PtzDigitalFlipState_Get()で回転設定を取得できます。
処理サンプル:処理サンプル(C版)
Code Block |
---|
retval #ifdef ADAM_TARGET_PF_ipro_ambaCV2X_linux err = ADAM_CV_SetCpuData(&ycInBlob, pData->m_pData); if(err != ADAM_CamPref_GetERR_OK){ ADAM_DEBUG_PRINT(ADAM_CAMPREF_TYPE_IMG_ROTATION, &m_adamCamPrefDataLV_ERR, "ADAM_CV_SetCpuData err! err:%d\n",err); return; } err = ADAM_CamInfo_Get(&m_adamCamInfo); if(retvalerr != ADAM_ERR_OK){ LPRADAM_DEBUG_PRINT( LPRADAM_LOG_LV_ERRDBG, "[LPR] ERROR --- ADAM_CamPrefCamInfo_Get() \nerr"); return LPRAPL_NG; } if ( m_adamCamPrefDataadamCamInfo.m_arg.m_rotationptz == 1) { err = LPR_IMG_ROTATE_180DEG){ADAM_PtzDigitalFlipState_Get(&ptzDegitalFlip); if(err != ADAM_ERR_OK){ LPRADAM_DEBUG_PRINT( LPR_LOGADAM_LV_ERR, "ADAM_PtzDigitalFlipState_Get err"); return; } if( ptzDegitalFlip == 1){ ADAM_DEBUG_PRINT(ADAM_LV_DBG, "[LPR] ImageLotateptzDegitalFlip = (%d)\n",m_adamCamPrefData.m_arg.m_rotationptzDegitalFlip); iReterr = ADAM_CV_SetCpuData ( ImageRotate(&ycInBlob,&ycInBlobTmp ,ADAM_ROTATE_180DEG); ycimg ); if(err != ADAM_CV_ImageRotate(ERR_OK){ &ycInBlobTmp, &lprapl_img_buffer.ycInBlob[count], ADAM_ROTATE_180DEG ); }else if (m_adamCamPrefData.m_arg.m_rotation == LPR_IMG_ROTATE_0DEG){ iRet = ADAM_CV_SetCpuData ( &lprapl_img_buffer.ycInBlob[count] , ycimg ); }else{ LPR_DEBUG_PRINT( LPR_LOG_LV_ERR, "[LPR] ERROR --- Bad Rotate ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ADAM_CV_ImageRotate err \n"); return; } } } else{ err = ADAM_CamPref_Get(ADAM_CAMPREF_TYPE_IMG_ROTATION, &m_adamCamPrefData); if(err != ADAM_ERR_OK){ ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ERROR --- ADAM_CamPref_Get() \n"); return; } if( m_adamCamPrefData.m_arg.m_rotation == 180 ){ ADAM_DEBUG_PRINT(ADAM_LV_DBG, "ImageLotate = (%d)\n", m_adamCamPrefData.m_arg.m_rotation); err LPR_abort(); } |
Note |
SシリーズBOXカメラの場合はこちらをご参照ください。= ADAM_CV_ImageRotate(&ycInBlob,&ycInBlobTmp,ADAM_ROTATE_180DEG);
if(err != ADAM_ERR_OK){
ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ADAM_CV_ImageRotate err \n");
return;
}
}
}
#endif |
関連FAQ
dev-partner.i-pro.com/space/TPFAQ/724078720
Python版API
adam_cam_pref_get()
adam_cv_image_rotate()
adam_ptz_digital_flip_state_get()