[JNI] jbyte를 C++의 vector<uchar>로 변환하는 방법

2023. 3. 12. 21:22·Etc
728x90
반응형

이번 포스팅에서는 매개변수로 받은 jbyte형 변수를 C++의 vector<uchar> 자료형으로 변환하는 방법에 대해 설명하겠습니다! JNI 함수 쪽에서 아래와 같은 과정을 통해 변환해주면 됩니다.

void byte2char(
    JNIEnv *env, 
    jclass obj, 
    jbyteArray tmp){
    
    int tmp_len = env->GetArrayLength(tmp);
    unsigned char* tmpBuffer = new unsigned char[tmp_len];
    env->GetByteArrayRegion(tmp, 0, tmp_len, reinterpret_cast<jbyte*>(tmpBuffer));
    vector<uchar> newtmp(*tmpBuffer, tmp_len);

}

1. 먼저, byte형 변수의 길이가 필요합니다. env->GetArrayLength() 를 통해 가져올 수 있습니다!

2. 1에서 가져온값 만큼의 길이를 갖는 unsigned char* 변수를 선언합니다.

3. env->GetByteArrayRegion()를 이용해 2에 선언된 변수에 세팅합니다.

4. vector<uchar> 자료형으로 만들어줍니다.

728x90
반응형
저작자표시 (새창열림)

'Etc' 카테고리의 다른 글

sd-x2-latent-upscaler 모델로 image upscale 하기  (2) 2024.11.21
safetensor 모델을 diffusers에서 사용 가능하게 변경하기  (0) 2024.11.11
[JNI] JNI 사용법 및 튜토리얼 (2)  (0) 2023.03.12
[JNI] JNI 사용법 및 튜토리얼 (1)  (3) 2023.03.11
[C++] 클래스 메모리 주소를 클래스로 변환하기  (0) 2023.03.11
'Etc' 카테고리의 다른 글
  • sd-x2-latent-upscaler 모델로 image upscale 하기
  • safetensor 모델을 diffusers에서 사용 가능하게 변경하기
  • [JNI] JNI 사용법 및 튜토리얼 (2)
  • [JNI] JNI 사용법 및 튜토리얼 (1)
ga.0_0.ga
ga.0_0.ga
    반응형
    250x250
  • ga.0_0.ga
    ##뚝딱뚝딱 딥러닝##
    ga.0_0.ga
  • 전체
    오늘
    어제
    • 분류 전체보기 (181)
      • Paper Review (51)
        • Video Scene Graph Generation (6)
        • Image Scene Graph Generation (18)
        • Graph Model (5)
        • Key Information Extraction (4)
        • Fake Detection (2)
        • Text to Image (1)
        • Diffusion Personalization (4)
        • etc (11)
      • AI Research (49)
        • Deep Learning (30)
        • Artificial Intelligence (15)
        • Data Analysis (4)
      • Pytorch (10)
      • ONNX (5)
      • OpenCV (2)
      • Error Note (34)
      • Linux (2)
      • Docker (3)
      • Etc (7)
      • My Study (16)
        • Algorithm (10)
        • Project (4)
        • Interview (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    그래프신경망
    RuntimeError
    정규화
    pandas
    forch.nn.functional
    알고리즘
    활성화 함수
    Activation Function
    fine tuning
    torch.nn
    i3d
    permute
    TypeError
    dataset
    오차 역전파
    ONNX
    dataloader
    JNI
    HRNet
    Logistic regression
    transformer
    linear regression
    차원의 저주
    나이브 베이즈 분류
    Inductive bias
    3dinput
    GCN
    contiguous
    tensorflow
    pytorch
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
ga.0_0.ga
[JNI] jbyte를 C++의 vector<uchar>로 변환하는 방법
상단으로

티스토리툴바