From 1c05ebf522f0bb5776ba51a46d94aa101220fea1 Mon Sep 17 00:00:00 2001 From: AlexeyAB Date: Thu, 7 Jun 2018 03:39:30 +0300 Subject: [PATCH] Minor fix --- src/image.c | 9 ++++++++- src/network.c | 4 ++-- src/parser.c | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/image.c b/src/image.c index 35e8551e..9084e7e9 100644 --- a/src/image.c +++ b/src/image.c @@ -1034,7 +1034,14 @@ image get_image_from_stream_resize(CvCapture *cap, int w, int h, int c, IplImage else return make_empty_image(0, 0, 0); } if (src->width < 1 || src->height < 1 || src->nChannels < 1) { - if (cpp_video_capture) cvReleaseImage(&src); + if (cpp_video_capture) { + cvReleaseImage(&src); + int z = 0; + for (z = 0; z < 10; ++z) { + get_webcam_frame(cap); + cvReleaseImage(&src); + } + } if (dont_close) src = cvCreateImage(cvSize(416, 416), IPL_DEPTH_8U, c); else return make_empty_image(0, 0, 0); } diff --git a/src/network.c b/src/network.c index b32dfc00..499bf0f1 100644 --- a/src/network.c +++ b/src/network.c @@ -443,8 +443,8 @@ int resize_network(network *net, int w, int h) } #ifdef GPU if(gpu_index >= 0){ - printf(" try to allocate workspace = %zu * sizeof(float), ", (workspace_size - 1) / sizeof(float) + 1); - net->workspace = cuda_make_array(0, (workspace_size-1)/sizeof(float)+1); + printf(" try to allocate workspace = %zu * sizeof(float), ", workspace_size / sizeof(float) + 1); + net->workspace = cuda_make_array(0, workspace_size/sizeof(float) + 1); printf(" CUDA allocate done! \n"); }else { free(net->workspace); diff --git a/src/parser.c b/src/parser.c index c1ee98c3..184d1de3 100644 --- a/src/parser.c +++ b/src/parser.c @@ -817,7 +817,7 @@ network parse_network_cfg_custom(char *filename, int batch) //printf("%ld\n", workspace_size); #ifdef GPU if(gpu_index >= 0){ - net.workspace = cuda_make_array(0, (workspace_size-1)/sizeof(float)+1); + net.workspace = cuda_make_array(0, workspace_size/sizeof(float) + 1); }else { net.workspace = calloc(1, workspace_size); }