Cannot Obtain Similar DL Prediction Result in Pytorch C++ API Compared to Python Unicorn Meta Zoo #1: Why another podcast? Announcing the arrival of Valued Associate #679: Cesar Manara 2019 Moderator Election Q&A - Questionnaire 2019 Community Moderator Election ResultsPython plot for confusion matrix similar to confusion wheel?Understanding ConfusionMatrix for Google Prediction APIPython svm classification, result vs amount of features not as expectedCannot get the prediction right using Stochastic Gradient Descent: Always predicts 1I do not understand the prediction result of the CNN modelAre view() in Pytorch and reshape() in Numpy similar?How to use Cross Entropy loss in pytorch for binary prediction?How to use Cross Entropy loss in pytorch for binary prediction?How standardizing and/or log transformation affect prediction result in machine learning models

What is /etc/mtab in Linux?

A strange hotel

What does a straight horizontal line above a few notes, after a changed tempo mean?

I preordered a game on my Xbox while on the home screen of my friend's account. Which of us owns the game?

Why do games have consumables?

Is Electric Central Heating worth it if using Solar Panels?

How to keep bees out of canned beverages?

Drawing a german abacus as in the books of Adam Ries

Do I need to watch Ant-Man and the Wasp and Captain Marvel before watching Avengers: Endgame?

How to not starve gigantic beasts

How would this chord from "Rocket Man" be analyzed?

A Paper Record is What I Hamper

Why didn't the Space Shuttle bounce back into space as many times as possible so as to lose a lot of kinetic energy up there?

A faster way to compute the largest prime factor

Which big number is bigger?

Approximating integral with small parameter

What makes accurate emulation of old systems a difficult task?

What is the ongoing value of the Kanban board to the developers as opposed to management

Putting Ant-Man on house arrest

Is there really no use for MD5 anymore?

Air bladders in bat-like skin wings for better lift?

Older movie/show about humans on derelict alien warship which refuels by passing through a star

Why did C use the -> operator instead of reusing the . operator?

How do I prove this combinatorial identity



Cannot Obtain Similar DL Prediction Result in Pytorch C++ API Compared to Python



Unicorn Meta Zoo #1: Why another podcast?
Announcing the arrival of Valued Associate #679: Cesar Manara
2019 Moderator Election Q&A - Questionnaire
2019 Community Moderator Election ResultsPython plot for confusion matrix similar to confusion wheel?Understanding ConfusionMatrix for Google Prediction APIPython svm classification, result vs amount of features not as expectedCannot get the prediction right using Stochastic Gradient Descent: Always predicts 1I do not understand the prediction result of the CNN modelAre view() in Pytorch and reshape() in Numpy similar?How to use Cross Entropy loss in pytorch for binary prediction?How to use Cross Entropy loss in pytorch for binary prediction?How standardizing and/or log transformation affect prediction result in machine learning models










0












$begingroup$


I have trained a deep learning model using unet architecture in order to segment the nuclei in python and pytorch. I would like to load this pretrained model and make prediction in C++. For this reason, I obtained trace file(with pt extension). Then, I have run this code:



 #include <iostream>

#include <torch/script.h> // One-stop header.

#include <iostream>
#include <memory>

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>


using namespace cv;


int main(int argc, const char* argv[])


Mat image;
image = imread("C:/Users/Sercan/PycharmProjects/samplepyTorch/test_2.png", CV_LOAD_IMAGE_COLOR);

std::shared_ptr<torch::jit::script::Module> module = torch::jit::load("C:/Users/Sercan/PycharmProjects/samplepyTorch/epistroma_unet_best_model_trace.pt");
module->to(torch::kCUDA);


std::vector<int64_t> sizes = 1, 3, image.rows, image.cols ;
torch::TensorOptions options(torch::ScalarType::Byte);
torch::Tensor tensor_image = torch::from_blob(image.data, torch::IntList(sizes), options);
tensor_image = tensor_image.toType(torch::kFloat);
auto result = module->forward( tensor_image.to(at::kCUDA) ).toTensor();


result = result.squeeze().cpu();
result = at::sigmoid(result);

cv::Mat img_out(image.rows, image.cols, CV_32F, result.data<float>());

cv::imwrite("img_out.png", img_out);




Image outputs ( First image: test image, Second image: Python prediction result, Third image: C++ prediction result):



enter image description here



As you see, C++ prediction output is not similar to python prediction output. Could you offer a solution to fix this problem?










share|improve this question











$endgroup$
















    0












    $begingroup$


    I have trained a deep learning model using unet architecture in order to segment the nuclei in python and pytorch. I would like to load this pretrained model and make prediction in C++. For this reason, I obtained trace file(with pt extension). Then, I have run this code:



     #include <iostream>

    #include <torch/script.h> // One-stop header.

    #include <iostream>
    #include <memory>

    #include <opencv2/core/core.hpp>
    #include <opencv2/highgui/highgui.hpp>


    using namespace cv;


    int main(int argc, const char* argv[])


    Mat image;
    image = imread("C:/Users/Sercan/PycharmProjects/samplepyTorch/test_2.png", CV_LOAD_IMAGE_COLOR);

    std::shared_ptr<torch::jit::script::Module> module = torch::jit::load("C:/Users/Sercan/PycharmProjects/samplepyTorch/epistroma_unet_best_model_trace.pt");
    module->to(torch::kCUDA);


    std::vector<int64_t> sizes = 1, 3, image.rows, image.cols ;
    torch::TensorOptions options(torch::ScalarType::Byte);
    torch::Tensor tensor_image = torch::from_blob(image.data, torch::IntList(sizes), options);
    tensor_image = tensor_image.toType(torch::kFloat);
    auto result = module->forward( tensor_image.to(at::kCUDA) ).toTensor();


    result = result.squeeze().cpu();
    result = at::sigmoid(result);

    cv::Mat img_out(image.rows, image.cols, CV_32F, result.data<float>());

    cv::imwrite("img_out.png", img_out);




    Image outputs ( First image: test image, Second image: Python prediction result, Third image: C++ prediction result):



    enter image description here



    As you see, C++ prediction output is not similar to python prediction output. Could you offer a solution to fix this problem?










    share|improve this question











    $endgroup$














      0












      0








      0





      $begingroup$


      I have trained a deep learning model using unet architecture in order to segment the nuclei in python and pytorch. I would like to load this pretrained model and make prediction in C++. For this reason, I obtained trace file(with pt extension). Then, I have run this code:



       #include <iostream>

      #include <torch/script.h> // One-stop header.

      #include <iostream>
      #include <memory>

      #include <opencv2/core/core.hpp>
      #include <opencv2/highgui/highgui.hpp>


      using namespace cv;


      int main(int argc, const char* argv[])


      Mat image;
      image = imread("C:/Users/Sercan/PycharmProjects/samplepyTorch/test_2.png", CV_LOAD_IMAGE_COLOR);

      std::shared_ptr<torch::jit::script::Module> module = torch::jit::load("C:/Users/Sercan/PycharmProjects/samplepyTorch/epistroma_unet_best_model_trace.pt");
      module->to(torch::kCUDA);


      std::vector<int64_t> sizes = 1, 3, image.rows, image.cols ;
      torch::TensorOptions options(torch::ScalarType::Byte);
      torch::Tensor tensor_image = torch::from_blob(image.data, torch::IntList(sizes), options);
      tensor_image = tensor_image.toType(torch::kFloat);
      auto result = module->forward( tensor_image.to(at::kCUDA) ).toTensor();


      result = result.squeeze().cpu();
      result = at::sigmoid(result);

      cv::Mat img_out(image.rows, image.cols, CV_32F, result.data<float>());

      cv::imwrite("img_out.png", img_out);




      Image outputs ( First image: test image, Second image: Python prediction result, Third image: C++ prediction result):



      enter image description here



      As you see, C++ prediction output is not similar to python prediction output. Could you offer a solution to fix this problem?










      share|improve this question











      $endgroup$




      I have trained a deep learning model using unet architecture in order to segment the nuclei in python and pytorch. I would like to load this pretrained model and make prediction in C++. For this reason, I obtained trace file(with pt extension). Then, I have run this code:



       #include <iostream>

      #include <torch/script.h> // One-stop header.

      #include <iostream>
      #include <memory>

      #include <opencv2/core/core.hpp>
      #include <opencv2/highgui/highgui.hpp>


      using namespace cv;


      int main(int argc, const char* argv[])


      Mat image;
      image = imread("C:/Users/Sercan/PycharmProjects/samplepyTorch/test_2.png", CV_LOAD_IMAGE_COLOR);

      std::shared_ptr<torch::jit::script::Module> module = torch::jit::load("C:/Users/Sercan/PycharmProjects/samplepyTorch/epistroma_unet_best_model_trace.pt");
      module->to(torch::kCUDA);


      std::vector<int64_t> sizes = 1, 3, image.rows, image.cols ;
      torch::TensorOptions options(torch::ScalarType::Byte);
      torch::Tensor tensor_image = torch::from_blob(image.data, torch::IntList(sizes), options);
      tensor_image = tensor_image.toType(torch::kFloat);
      auto result = module->forward( tensor_image.to(at::kCUDA) ).toTensor();


      result = result.squeeze().cpu();
      result = at::sigmoid(result);

      cv::Mat img_out(image.rows, image.cols, CV_32F, result.data<float>());

      cv::imwrite("img_out.png", img_out);




      Image outputs ( First image: test image, Second image: Python prediction result, Third image: C++ prediction result):



      enter image description here



      As you see, C++ prediction output is not similar to python prediction output. Could you offer a solution to fix this problem?







      machine-learning deep-learning computer-vision pytorch






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Apr 6 at 7:55







      michael scolfield

















      asked Apr 6 at 7:20









      michael scolfieldmichael scolfield

      13




      13




















          0






          active

          oldest

          votes












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "557"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f48728%2fcannot-obtain-similar-dl-prediction-result-in-pytorch-c-api-compared-to-python%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Data Science Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          Use MathJax to format equations. MathJax reference.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f48728%2fcannot-obtain-similar-dl-prediction-result-in-pytorch-c-api-compared-to-python%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Adding axes to figuresAdding axes labels to LaTeX figuresLaTeX equivalent of ConTeXt buffersRotate a node but not its content: the case of the ellipse decorationHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizeNumerical conditional within tikz keys?adding axes to shapesAlign axes across subfiguresAdding figures with a certain orderLine up nested tikz enviroments or how to get rid of themAdding axes labels to LaTeX figures

          Tähtien Talli Jäsenet | Lähteet | NavigointivalikkoSuomen Hippos – Tähtien Talli

          Do these cracks on my tires look bad? The Next CEO of Stack OverflowDry rot tire should I replace?Having to replace tiresFishtailed so easily? Bad tires? ABS?Filling the tires with something other than air, to avoid puncture hassles?Used Michelin tires safe to install?Do these tyre cracks necessitate replacement?Rumbling noise: tires or mechanicalIs it possible to fix noisy feathered tires?Are bad winter tires still better than summer tires in winter?Torque converter failure - Related to replacing only 2 tires?Why use snow tires on all 4 wheels on 2-wheel-drive cars?