변경 될 때마다 스레드의 원시 이미지 데이터에 대한 포인터를 얻고 다른 스레드가이를 사용하기 전에 복사본을 만들고 싶습니다. 원시 데이터의 크기를 모르는 경우 무작위로 크기를 선택하고 원시 데이터를 제공하기 때문에 어떻게이 작업을 수행 할 수 있습니까? 이 포인터에서 원시 데이터를 복사하려면 어떻게해야합니까?이미지 원시 데이터 복사
1
A
답변
0
원시 포인터 "데이터"의 복사본을 만들려면 추가 정보 인이 데이터의 크기가 필요합니다. 원시 데이터는 이미지를 가리키고 있으므로 생성시에 이미 width
및 height
이 있습니다. 이것이 8 비트/픽셀 이미지가 아닌 경우 bpp
(픽셀 당 바이트)을 가질 수도 있습니다. 이 세 가지를 곱하면 원시 데이터 크기가됩니다.
현재 원시 데이터의 주소 만 전달합니다. 다른 변수에 액세스하려면 나머지 변수도 전달해야합니다. (내 댓글 당)
하나의 옵션은 width
및 height
(선택적, bpp
)를 저장하는 데 필요한 크기로 malloc
에드 원시 데이터 크기를 확장하여 매우 시작에서 다음을 저장하는 것입니다.
더 좋은 방법 (더 관리하기 때문에)을 생성하는 것 struct
:
struct myData_t {
int width;
int height;
void *data;
} myData, *myDataPtr;
이 데이터를이 구조체를 작성하고 다른 기능 (들)의
주소를 반환합니다.
올바른 순서대로 메모리 정리를 수행해야합니다. 먼저 myDataPtr->data
을 해제하고 그 다음에만 myDataPtr
을 해제하십시오.
+0
감사합니다. :) – user3365783
관련 문제
- 1. 원시 이미지 데이터 시각화
- 2. 2048x2032 원시 이미지 데이터 크기?
- 3. 자바 스크립트의 원시 이미지 데이터 변환
- 4. OpenCV에 원시 이미지 저장
- 5. 조작 원시 PNG 데이터
- 6. PHP html로 표시 할 이미지 데이터 복사
- 7. .Net 원시 이미지 검사/분해
- 8. Java에서 원시 데이터로 이미지 생성하기
- 9. 원시 ISO 이미지 만들기
- 10. 원시 이미지에서 tiff 이미지
- 11. C4 원시 이미지 픽셀
- 12. UIImage로 RGB565 원시 데이터 표시
- 13. 이진 이미지 데이터를 문자열로 복사
- 14. Hadoop의 원시 데이터 액세스
- 15. Google지도에서 원시 데이터 추출
- 16. 원시 소켓 임의 데이터
- 17. USB의 원시 데이터
- 18. PHP 컬 원시 데이터
- 19. Google 드라이브 원시 데이터?
- 20. 원시 데이터 디코딩
- 21. 원시 데이터 요청
- 22. PHP는 원시 픽셀 데이터
- 23. 원시 데이터 소스
- 24. 원시 데이터 형식 참조
- 25. CKEditor 컨트롤러에 원시 데이터
- 26. 원시 오디오 데이터 해시
- 27. 원시 POST 데이터 조롱
- 28. libjpeg : 전체 데이터 복사
- 29. 데이터 복사
- 30. 데이터 복사
얼마나 많은 데이터를 가리키고 있고 EOT 마커가 없는지 확실하지 않은 경우이를 안정적으로 수행 할 수 없습니다. –
원시 데이터에 대한 포인터가 크기에 대해 아무 것도 알려주지 않습니다. 따라서 솔루션은 간단합니다. 크기를 전달하는 메커니즘을 추가해야합니다. 예를 들어, "원시 데이터"크기를 하나의 int로 확장하고이 크기를 쓰십시오. – usr2564301
그러면 어떻게해야합니까? 덤프 된 이미지의 너비와 높이를 계산할 수 있다면이 포인터의 복사본을 만드는 신뢰할 수있는 방법입니다. – user3365783