2021年3月17日星期三

VS2015上OpenCV-2.4.13安装与Hi35xx .jpg/.bmp格式转.bgr格式开发

  因为Hi3559AV100后期深度学习开发需要用到.bgr格式的图片,而目前在手的一般为.jpg或.bmp格式的图片,下面随笔将给出基于OpenCV-2.4.13的格式转换,实现Hi35xx .jpg/.bmp格式转.bgr格式转换。

VS2015上OpenCV-2.4.13安装

环境

  Win10

  VS2015 win32 Debug

操作步骤

  现在给出OpenCV-2.4.13安装具体细节:

  首先给出下载地址,OpenCV是开源免费的,通过网站直接下载:https://opencv.org/releases/#

  下载好之后,把下载包压缩到文件夹下(注意没有中文等),压缩好之后,先在win10上配置好环境变量,具体如下操作:

  在系统环境PATH变量下添加opencv\build\x86\vc14\bin路径:(若VS2015需要x64 Debug,则添加x64的bin路径,也可以两个都添加,方便后面使用) 记得一定要重启

   添加完系统路径后,打开VS2015,创建Win32控制台应用程序,点击完成之后,下一步选择空项目创建

   创建完成之后,选择属性管理器

   随后在属性管理器界面点开Debug|Win32,双击Microsoft.Cpp.Win32.user:

   随后在VC++目录下添加包含目录、库目录,添加具体内容如下:

   随后在链接器下面选择输入,添加附加依赖项:

   附加依赖项添加具体内容如下:(带D表示为Debug模式,否则为Release模式)

 1 opencv_calib3d2413d.lib 2 opencv_contrib2413d.lib 3 opencv_core2413d.lib 4 opencv_features2d2413d.lib 5 opencv_flann2413d.lib 6 opencv_gpu2413d.lib 7 opencv_highgui2413d.lib 8 opencv_imgproc2413d.lib 9 opencv_legacy2413d.lib10 opencv_ml2413d.lib11 opencv_nonfree2413d.lib12 opencv_objdetect2413d.lib13 opencv_ocl2413d.lib14 opencv_photo2413d.lib15 opencv_stitching2413d.lib16 opencv_superres2413d.lib17 opencv_ts2413d.lib18 opencv_video2413d.lib19 opencv_videostab2413d.lib

   虽然在工程下创建源文件即可编辑,输入如下内容进行测试:

 1 #include <opencv.hpp> 2 using namespace cv; 3 int main() 4 { 5  Mat srcImage; 6  srcImage = imread("C:/Users/PC/Desktop/jpg_bgr/10_MariaCallas_28_f.jpg"); 7  8  imshow("显示图像", srcImage); 9 10  waitKey();11 12  return 0;13 }

  测试通过后,进行Hi35xx .jpg/.bmp格式转.bgr格式实现。

Hi35xx .jpg/.bmp格式转.bgr OpenCV实现

  下面直接给出代码,供大家使用:

代码实现

 1 #include <stdio.h> 2 #include <windows.h> 3 #include <math.h> 4 #include <iostream> 5 #include <string> 6  7 #include "opencv2/opencv.hpp" 8 #include "opencv2/highgui/highgui.hpp" 9 #include "opencv2/imgproc/imgproc.hpp"10 11 using namespace cv;12 13 typedef unsigned char U_CHAR;14 15 int main()16 {17  const char *filename = "C:/Users/PC/Desktop/jpg_bgr/10_MariaCallas_28_f.jpg";18  char *outname = "C:/Users/PC/Desktop/jpg_bgr/10_MariaCallas_28_f.bgr";19  int flag = 1;20 21  cv::Mat img = cv::imread(filename);22  if (!img.data)23  {24   printf("read image error\n");25   return -1;26  }27 28  //缩放29  resize(img, img, Size(112, 112)); //224x22430          //imshow("img",img);31          //waitKey(0);32 33  U_CHAR *data = (U_CHAR*)img.data;34  int step = img.step;35  printf("Step: %d, height: %d, width: %d\n",36   step, img.rows, img.cols);37 38  FILE *fp = fopen(outname, "wb");39  int h = img.rows;40  int w = img.cols;41  int c = img.channels();42 43  for (int k = 0; k<c; k++) {44   for (int i = 0; i<h; i++) {45    for (int j = 0; j<w; j++) {46     fwrite(&data[i*step + j*c + k], sizeof(U_CHAR), 1, fp);47    }48   }49  }50  fclose(fp);51 52  return 0;53 }

112×112 转换.bgr测试结果

 









原文转载:http://www.shaoqun.com/a/632770.html

跨境电商:https://www.ikjzd.com/

acca是什么:https://www.ikjzd.com/w/1370

worldfirst:https://www.ikjzd.com/w/289


因为Hi3559AV100后期深度学习开发需要用到.bgr格式的图片,而目前在手的一般为.jpg或.bmp格式的图片,下面随笔将给出基于OpenCV-2.4.13的格式转换,实现Hi35xx.jpg/.bmp格式转.bgr格式转换。VS2015上OpenCV-2.4.13安装环境  Win10  VS2015win32Debug操作步骤  现在给出OpenCV-2.4.13安装具体细节:  首先给
沃尔玛:https://www.ikjzd.com/w/220
hts:https://www.ikjzd.com/w/525
heap:https://www.ikjzd.com/w/2012
2020亚马逊广告高阶课程:https://www.kjyunke.com/courses/635
后疫情时代,进口品牌加速线上化,不少外贸企业转投跨境电商!:https://www.ikjzd.com/home/134743
做跨境电商年前好不容易爆单了,却亏了本,问题到底出在哪?:https://www.ikjzd.com/home/16001

没有评论:

发表评论