내 프로젝트의 일부로 내장 된 컴퓨터에서 클라이언트 응용 프로그램으로 웹 소켓을 사용하여 이미지 스트림을 보내고 스트리밍을 달성하기 위해 img
태그에 표시하려고했습니다.Opencv - png 이미지 만들기
첫 번째로 원본 RGB 데이터 (752 * 480 * 3 - 약 1MB)를 보내려고했지만 결국 엔 RGB 이미지를 기반으로 자바 스크립트로 이미지를 인코딩하는 데 문제가 발생했습니다. 내 데이터를 먼저 PNG로 보내고 웹 소켓을 사용하여 보냈습니다.
문제는 프로젝트에 이미 사용 된 OpenCV
라이브러리를 사용하여 PNG에 내 데이터를 인코딩하는 데 문제가 있습니다.
첫째, 일부 코드 :
websocketBrokerStructure.matrix = cvEncodeImage(0, websocketBrokerStructure.bgrImageToSend, 0);
websocketBrokerStructure.imageDataLeft = websocketBrokerStructure.matrix->rows * websocketBrokerStructure.matrix->cols * websocketBrokerStructure.matrix->step;
websocketBrokerStructure.imageDataSent = 0;
하지만 두 번째 줄의 실행 중에 이상한 오류가 점점 오전 :
terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_S_construct NULL not valid
와 나는에서이 오류가있는 이유 조금 혼란 스러워요 내 암호. 나는 바로 그것을 이해한다면
또한 내가 궁금 : 호출 한 후에 cvEncodeImage (bgrImage
3 개 채널 IplImage*
입니다 - BGR) 난 그냥 PNG로 인코딩 된 모든 데이터를 얻기 위해 내 CvMat
의 data
회원을 반복해야합니까?
내 부분에 아주 어리석은 실수, 그것을 알아 줘서 고마워. – Andna