Компактная сборка для приложений OpenCV на Windows - PullRequest
1 голос
/ 04 мая 2020

Я читал эту статью о том, как создавать компактные сборки для приложений, использующих OpenCV.

Но эта статья включает только оптимизацию, связанную с G CC. Я ищу эквивалентные параметры в Visual Studio, но могу найти только параметр минимизации размера (/ Os) и параметр /LTCG.

Я создаю очень простое консольное приложение OpenCV (код ниже ) с использованием OpenCV stati c библиотек, созданных из исходного кода. Проблема в том, что размер исполняемого файла слишком велик (37 МБ в сборке Debug и 19 МБ в сборке выпуска). Я хочу уменьшить этот размер до нескольких МБ, и я ищу способы сделать это - я нашел эту статью, исследуя эту тему.

#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/imgcodecs.hpp>

int main()
{
    cv::Mat m = cv::imread("sample.jpg");
    cv::imwrite("output.jpg", m);
    std::cout << "Hello World!\n" << m.rows << " " << m.cols;
    return 0;
}

На всякий случай, если кто-то захочет узнать, я включаю следующие библиотеки (ниже приведены для режима выпуска):

opencv_core430.lib
opencv_imgproc430.lib
opencv_imgcodecs430.lib
libjpeg-turbo.lib
libpng.lib
libtiff.lib
libwebp.lib
ippiw.lib
zlib.lib
IlmImf.lib
libjasper.lib
ittnotify.lib
ippicvmt.lib

Если у кого-то есть идеи, какие есть варианты Visual Studio, это было бы очень полезно.

Кроме того, есть ли кто-нибудь, кому удалось уменьшить размер исполняемого файла, используя stati c OpenCV библиотеки в Visual Studio?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...