Title: 内存泄漏 · Issue #23 · UsingNet/nvjpeg-python · GitHub
Open Graph Title: 内存泄漏 · Issue #23 · UsingNet/nvjpeg-python
X Title: 内存泄漏 · Issue #23 · UsingNet/nvjpeg-python
Description: 不知道为什么,把下面函数返回的 unsigned char* 值给cv::Mat之后会导致内存泄漏 unsigned char* JpegCoderImage::buffer() { nvjpegImage_t* img = ((nvjpegImage_t*)(this->img)); size_t size = height * width * 3; unsigned char* buffer = (unsigned char*)malloc(size); cudaM...
Open Graph Description: 不知道为什么,把下面函数返回的 unsigned char* 值给cv::Mat之后会导致内存泄漏 unsigned char* JpegCoderImage::buffer() { nvjpegImage_t* img = ((nvjpegImage_t*)(this->img)); size_t size = height * width * 3; unsigned char* buff...
X Description: 不知道为什么,把下面函数返回的 unsigned char* 值给cv::Mat之后会导致内存泄漏 unsigned char* JpegCoderImage::buffer() { nvjpegImage_t* img = ((nvjpegImage_t*)(this->img)); size_t size = height * width * 3; unsigned char* b...
Opengraph URL: https://github.com/UsingNet/nvjpeg-python/issues/23
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"内存泄漏","articleBody":"不知道为什么,把下面函数返回的 unsigned char* 值给cv::Mat之后会导致内存泄漏\r\n```\r\nunsigned char* JpegCoderImage::buffer() {\r\n\tnvjpegImage_t* img = ((nvjpegImage_t*)(this-\u003eimg));\r\n\tsize_t size = height * width * 3;\r\n\tunsigned char* buffer = (unsigned char*)malloc(size);\r\n\tcudaMemcpy(buffer, img-\u003echannel[0], size, cudaMemcpyDeviceToHost);\r\n\r\n\treturn buffer;\r\n}\r\n```\r\n```\r\nJpegCoderImage* jpgImage = decode((const unsigned char *)(pchData.data()), file_size);\r\n\r\nimg = cv::Mat(jpgImage-\u003eheight, jpgImage-\u003ewidth, CV_8UC3, jpgImage-\u003ebuffer());\r\n\r\ndelete jpgImage;\r\n```\r\n\r\n好像是 buffer 导致内存无法释放?\r\n\r\n我现在的做法是:\r\n```\r\nunsigned char* JpegCoderImage::buffer() {\r\n\tnvjpegImage_t* img = ((nvjpegImage_t*)(this-\u003eimg));\r\n\t//size_t size = height * width * 3;\r\n\t//unsigned char* buffer = (unsigned char*)malloc(size);\r\n\t//cudaMemcpy(buffer, img-\u003echannel[0], size, cudaMemcpyDeviceToHost);\r\n\r\n\treturn img-\u003echannel[0];\r\n}\r\n```\r\n```\r\nJpegCoderImage* jpgImage = decode((const unsigned char *)(pchData.data()), file_size);\r\n\r\nimg = cv::Mat(jpgImage-\u003eheight, jpgImage-\u003ewidth, CV_8UC3);\r\n\r\ncudaMemcpy(img.data, jpgImage-\u003ebuffer(), jpgImage-\u003eheight * jpgImage-\u003ewidth * 3, cudaMemcpyDeviceToHost);\r\n\r\ndelete jpgImage;\r\n```\r\n\r\n","author":{"url":"https://github.com/ZhangYich","@type":"Person","name":"ZhangYich"},"datePublished":"2024-05-11T08:08:24.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/23/nvjpeg-python/issues/23"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:ff991949-72ec-074a-32e3-a3e3bafd967a |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | EA9E:502D5:8A4A1F:BC85C3:698EFC4A |
| html-safe-nonce | 69053e2e65305f2fcf8b679f4cd729a18bbed3239f598569b39066f2bd1d1205 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFQTlFOjUwMkQ1OjhBNEExRjpCQzg1QzM6Njk4RUZDNEEiLCJ2aXNpdG9yX2lkIjoiNTQ1Mzg2NzUzNDI5MjgxMDgyNiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 2bc18d924bd823e9b225c66500adf21a06f59e87f771c5da46d9db4ffc9c61ee |
| hovercard-subject-tag | issue:2290773064 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/UsingNet/nvjpeg-python/23/issue_layout |
| twitter:image | https://opengraph.githubassets.com/46bfb74efe3ba324a320837e9fe22a54500ccf7217385d6b7280eb1066fa3d97/UsingNet/nvjpeg-python/issues/23 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/46bfb74efe3ba324a320837e9fe22a54500ccf7217385d6b7280eb1066fa3d97/UsingNet/nvjpeg-python/issues/23 |
| og:image:alt | 不知道为什么,把下面函数返回的 unsigned char* 值给cv::Mat之后会导致内存泄漏 unsigned char* JpegCoderImage::buffer() { nvjpegImage_t* img = ((nvjpegImage_t*)(this->img)); size_t size = height * width * 3; unsigned char* buff... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | ZhangYich |
| hostname | github.com |
| expected-hostname | github.com |
| None | 7f7bf82d8907f81525d95af82e60354b419d083df9534c8631d06bb9c0bf07ac |
| turbo-cache-control | no-preview |
| go-import | github.com/UsingNet/nvjpeg-python git https://github.com/UsingNet/nvjpeg-python.git |
| octolytics-dimension-user_id | 23328403 |
| octolytics-dimension-user_login | UsingNet |
| octolytics-dimension-repository_id | 334122746 |
| octolytics-dimension-repository_nwo | UsingNet/nvjpeg-python |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 334122746 |
| octolytics-dimension-repository_network_root_nwo | UsingNet/nvjpeg-python |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 29d97d94d5b31f96c01179273264722362f058e7 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width