因为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.lib
10 opencv_ml2413d.lib
11 opencv_nonfree2413d.lib
12 opencv_objdetect2413d.lib
13 opencv_ocl2413d.lib
14 opencv_photo2413d.lib
15 opencv_stitching2413d.lib
16 opencv_superres2413d.lib
17 opencv_ts2413d.lib
18 opencv_video2413d.lib
19 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)); //224x224
30 //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测试结果

VS2015上OpenCV-2.4.13安装与Hi35xx .jpg/.bmp格式转.bgr格式开发的更多相关文章

  1. ubuntu 16.04 安装opencv 2.4.13

    ubuntu 16.04 安装opencv 2.4.13 https://blog.csdn.net/u011557212/article/details/54706966?utm_source=it ...

  2. macOS Sierra上Opencv的安装与使用

    安装cmake brew install cmake 安装OpenCV brew install opencv //opencv升级 # brew upgrade opencv 配置OpenCV环境: ...

  3. 【OpenCV第一篇】安装OpenCV

    [OpenCV第一篇]安装OpenCV 本篇主要介绍如何下载OpenCV安装程序,如何在VS2008下安装配置OpenCV,文章最后还介绍了一个使用OpenCV的简单小例子. <OpenCV入门 ...

  4. Tesseract-OCR4.0版本在VS2015上的编译与运行(转)

    最近刚开始接触识别库引擎方面的知识,由于项目中需要使用光学识别处理模块,在老师与朋友的推荐下,我开始接触tesseract光学识别库,在最开始从GitHub上下载的源代码进行编译的时候,出现了许多意想 ...

  5. java jdk-awt.font在centos上中文乱码的问题, 安装中文字体

    有需求生成一个二维码,并且有一段文本说明,但是使用awt.font来生成中文时,一直存在乱码的问题.网上的解决办法有几种,但是在centos上亲测有用的就是如下的方法. Java代码如下:new ja ...

  6. macOS 10.13 安装Virtualbox失败

    macOS 10.13 安装Virtualbox失败 Enviroment macOS: 10.13 High Sierra virtualBox: 5.1.28 Problem descriptio ...

  7. OpenCV 2.4.13 installed in Ubuntu 14 and CMakeLists Demo

    1. 配置编译器环境 [compiler] sudo apt-get install build-essential 2. 安装OpenCV的依赖包 [required] -dev pkg-confi ...

  8. Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法)

    Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法) https://blog.csdn.net/ksws0292756/article/details ...

  9. mysql8.0.13安装、使用教程图解

    mysql8.0.13安装.使用教程图解 MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Manageme ...

随机推荐

  1. PWA App All In One

    PWA App All In One PWA in Action PWA Weather App https://pwa.xgqfrms.xyz/pwa-app/public/index.html c ...

  2. Sass && SCSS && Less

    1 1 1 Sass && SCSS && Less 在线SCSS编辑工具: http://www.sassmeister.com/ Sass v3.4.21 1 tu ...

  3. macOS & PostgreSQL

    macOS & PostgreSQL macOS 上安装 PostgreSQL 后为什么会自动创建一个系统用户账号 https://get.enterprisedb.com/postgresq ...

  4. Elastic Search 原理剖析

    Elastic Search 原理剖析 Elasticsearch 是一个开源的分布式 RESTful 搜索和分析引擎,能够解决越来越多不同的应用场景. 搜索引擎 refs https://www.e ...

  5. kahoot

    kahoot Make learning awesome! https://kahoot.it/ https://kahoot.com/ 我们的平台可让您在几分钟内轻松创建,共享和玩学习游戏或琐事测验 ...

  6. vue3 deep dive

    vue3 deep dive vue core vnode vue core render / mount / patch refs https://www.vuemastery.com/course ...

  7. React Native Apps

    React Native Apps https://github.com/ReactNativeNews/React-Native-Apps github app https://github.com ...

  8. HTTP in depth

    HTTP in depth https://developer.mozilla.org/en-US/docs/Web/HTTP https://developer.mozilla.org/en-US/ ...

  9. JsBridge & Android WebView

    JsBridge & Android WebView webview loadUrl addJavascriptInterface .setJavaScriptEnabled(true); f ...

  10. 「NGK每日快讯」2021.2.11日NGK公链第100期官方快讯!