0
에 MLMultiArray 내부 요소에 액세스하는 방법은 initWithDataPointer
를 사용하여 MLMultiArray
를 초기화 한이 link, subscript
요구에 언급 된 MLMultiArray
문서를 바탕으로 은 CoreML
float count = 512 * 384;
double *tempBuffer = malloc(count * sizeof(double));
NSError *error = NULL;
NSArray *shape = [NSArray arrayWithObjects:[NSNumber numberWithInt:1],[NSNumber numberWithInt:512],[NSNumber numberWithInt:384], nil];
NSArray *stride = [NSArray arrayWithObjects:[NSNumber numberWithInt:1],[NSNumber numberWithInt:1],[NSNumber numberWithInt:1], nil];
MLMultiArray *mlMultiArray = [[MLMultiArray alloc] initWithDataPointer:tempBuffer
shape:shape
dataType:MLMultiArrayDataTypeDouble
strides:stride
deallocator:^(void * _Nonnull bytes) { free(bytes); }
error:&error];
은 요소에 액세스하는 데 사용되어야한다.
표시된 방법으로 요소에 액세스하는 경우 올바른 것입니까?
NSNumber *val = [mlMultiArray objectForKeyedSubscript:[NSArray arrayWithObjects:[NSNumber numberWithInt:1],[NSNumber numberWithInt:1],[NSNumber numberWithInt:1], nil]];
고마워요, 내가 언급 한 것조차도 작동합니다. 어떻게 든 스트라이드 값이 잘못되었습니다. –