Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Updated:

質問

...

カメラ本体設定「画像回転」および「上下反転」により、YC画像の向きはどうなりますか?

...

回答

...

本体設定の「画像回転」および「上下反転」はライブ画に反映される設定です。※「上下反転」はPTZカメラのみ設定可能。
YC画像を回転させたい場合は、アプリ内で実装する必要があります。

[設定] - [基本] - [基本] - [画像回転]の設定を「180°(上下反転)」とすると、ライブ画の表示は180度回転します。

...

[PTZ] - [カメラ動作] - [カメラ動作] - [上下反転]の設定を「ON」とすると、ライブ画の表示は上下反転します。

...

[画像回転]を「0°(OFF)」に設定した場合
[上下反転]を「OFF」に設定した場合

...

[画像回転]を「180°(上下反転)」に設定した場合
[画像回転]を「ON」に設定した場合

...

ライブ画と同じ向きの画像を扱いたい場合は、カメラの設定に応じてアプリ内で画像回転させる必要があります。

ADAM_CamPref_Get()で回転設定を取得できます。

処理サンプル(C版)

Code Block
retvalerr = ADAM_CamPref_Get(ADAM_CAMPREF_TYPE_IMG_ROTATION, &m_adamCamPrefData);
if(retvalerr != ADAM_ERR_OK){
  LPRADAM_DEBUG_PRINT( LPR_LOGADAM_LV_ERR, "[LPR] ERROR --- ADAM_CamPref_Get() \n");
  return LPRAPL_NG;
}

err = ADAM_CV_SetCpuData(&ycInBlob, pData->m_pData);
if(err != ADAM_ERR_OK){
  ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ADAM_CV_SetCpuData err! err:%d\n",err);
  return;
}

if( m_adamCamPrefData.m_arg.m_rotation == LPR_IMG_ROTATE_180DEG 180 ){
  LPRADAM_DEBUG_PRINT( LPR_LOGADAM_LV_DBG, "[LPR] ImageLotate = (%d)\n",m_adamCamPrefData.m_arg.m_rotation);
  iReterr = ADAM_CV_SetCpuData ( ImageRotate(&ycInBlob,&ycInBlobTmp , ycimg ,ADAM_ROTATE_180DEG);
  if(err != ADAM_ERR_OK){
    ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ADAM_CV_ImageRotate( err \n");
    &ycInBlobTmp,return;
   &lprapl_img_buffer.ycInBlob[count],
  ADAM_ROTATE_180DEG
  );
}else if (m_adamCamPrefData.m_arg.m_rotation == LPR_IMG_ROTATE_0DEG){
  iRet}
}
Note

SシリーズBOXカメラの場合はこちらをご参照ください。

PTZカメラの場合はADAM_PtzDigitalFlipState_Get()で回転設定を取得できます。

処理サンプル(C版)

Code Block
err = ADAM_PtzDigitalFlipState_Get(&ptzDegitalFlip);
if(err != ADAM_ERR_OK){
  ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ADAM_PtzDigitalFlipState_Get err");
  return;
}

err = ADAM_CV_SetCpuData(&ycInBlob, pData->m_pData);
if( &lprapl_img_buffer.ycInBlob[count] , ycimg );
}else{
  LPRerr != ADAM_ERR_OK){
  ADAM_DEBUG_PRINT(ADAM_LV_ERR, "ADAM_CV_SetCpuData err! err:%d\n",err);
  return;
}

if( ptzDegitalFlip == 1){
  ADAM_DEBUG_PRINT( LPR_LOGADAM_LV_ERRDBG, "[LPR] ERROR --- Bad Rotate ptzDegitalFlip = (%d)\n", m_adamCamPrefData.m_arg.m_rotation);
  LPR_abort();
}
Note
SシリーズBOXカメラの場合はこちらをご参照ください。
ptzDegitalFlip);
  err = 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;
  }
}

Python版API

  • adam_cam_pref_get()

  • adam_cv_image_rotate()

  • adam_ptz_digital_flip_state_get()