OpenCV学习笔记01:读取和遍历图像
各种格式的lena图片
各种格式的Lena图片,包括: lena.bmp lena.jpg lena.tif lena1.bmp lena_256.tiff lena_color.jpg watermarkedlena.bmp 几乎所有格式都有了,方便你使用
OpenCV学习笔记01:读取和遍历图像
- 使用OpenCV读取和保存图片
- 图片的读取
- 图片的变换和保存
- `cv::Mat`基本图像容器
- `cv::Mat`类的结构
- 创建`cv::Mat`对象
- 遍历`cv::Mat`对象
- 例子:对图像进行color space reduction操作
仅作参考,详细API请参考OpenCV官方文档.
使用OpenCV读取和保存图片
图片的读取
在安装好OpenCV后,编写第一个OpenCV测试程序如下:
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>#include <iostream>int main() {// 读取图片cv::Mat img = cv::imread("lena.jpg");// 判断是否读取成功if (img.empty()) {std::cout << "Could not open or find the image" << std::endl;return -1;}// 显示图片cv::namedWindow("pic", cv::WINDOW_AUTOSIZE)cv::imshow("pic", img);cv::waitKey();return 0;
}
编译运行程序,可以看到OpenCV读取了图片文件并将其展示出来,证明我们的OpenCV安装成功.
其中cv::imread(const String& filename, int flags = IMREAD_COLOR)
函数用于读取图片,参数列表如下:
filename
参数表示图片的路径flags
参数表示将图片读取到内存的格式,可以是一下三者之一:IMREAD_UNCHANGED
(<0)表示以图片的存储格式来读取图片(包含α通道)IMREAD_GRAYSCALE
(=0)表示以灰度格式来读取图片(单通道)IMREAD_COLOR
(>0)表示以BGR格式读取图片(三通道)
cv::imread()
函数返回一个Mat
对象,可以调用其isempty()
方法判断是否读取成功.
cv::imshow()
函数用于展示图片.
图片的变换和保存
下面例子展示使用OpenCV进行色彩空间转换:
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/opencv.hpp>#include <iostream>int main() {// 读取图片cv::Mat image = cv::imread("lena.jpg", cv::IMREAD_COLOR);if (image.empty()) {std::cout << "Could not open or find the image" << std::endl;return -1;}// 进行色彩空间转换cv::Mat gray_image;cv::cvtColor(image, gray_image, cv::COLOR_BGR2GRAY);// 保存图片cv::imwrite("gray_image.jpg", gray_image);// 展示图片cv::namedWindow("color imge", cv::WINDOW_AUTOSIZE);cv::namedWindow("grayscale image", cv::WINDOW_AUTOSIZE);cv::imshow("color imge", image);cv::imshow("grayscale image", gray_image);cv::waitKey();return 0;
}
cv::cvtColor(InputArray src, OutputArray dst, int code, int dstCn = 0)
函数用于进行色彩空间转换,其参数列表如下:
src
,dst
: 原矩阵和目标矩阵.code
: 色彩空间转换代码,指示原色彩空间和目标色彩空间,可选值见官方文档.dstCn
: 目标图像的通道数,若指定为0
则输出通道数由code
参数推断.
cv::imread()
函数用于保存图片.
cv::Mat
基本图像容器
在OpenCV中,图片数据是以cv::Mat
类存储的,这是OpenCV得核心类.(在OpenCV1版本中,曾用IplImage
结构体来存储图像,现已被废弃).使用cv::Mat
类不用手动申请和释放内存,这要归功于cv::Mat
类的结构.
cv::Mat
类的结构
Mat类由两部分构成:
- 矩阵头(matrix header),存储图片矩阵的信息,包括矩阵形状,色彩空间,矩阵的内存地址等.
- 指向矩阵内容的
data
指针.
OpenCV使用指针计数管理内存的申请和释放,在矩阵头中有一个指针int* refcount
,统计使用同一个图片矩阵的cv::Mat
对象个数.
-
cv::Mat
对象的引用赋值和复制构造函数都不会引起图片矩阵的复制:Mat A, C; // 只创建了两个矩阵头 A = imread(argv[1], IMREAD_COLOR); // 读入数组Mat B(A); // 复制构造函数 C = A; // 引用赋值
在上面的程序中,
A
,B
,C
3个cv::Mat
对象的矩阵头不同,但指向同一个图片矩阵数组,对其中任何一个图片内容的修改会影响到另外两个图片内容. -
对图片的裁剪也不会引起矩阵图片的复制.
Mat D(A, Rect(10, 10, 100, 100)); // 使用ROI裁剪 Mat E = A(Range::all(), Range(1,3)); // 指定行列裁剪
D
,E
两个对象指向的是A
图片内容的一部分,仍然与A
共享同样的图片矩阵. -
可以使用
cv::Mat::clone()
和cv::Mat::copyTo()
实现图片矩阵的拷贝,这样拷贝出来的图片内容与原图片矩阵是独立的,修改新图片不会影响原图片.Mat F = A.clone(); Mat G; A.copyTo(G);
创建cv::Mat
对象
常见有以下几种方式创建cv::Mat
对象.
-
使用
cv::Mat
类构造函数cv::Mat
类有很多构造函数,最常用的为Mat (int rows, int cols, int type, const Scalar &s)
,参数列表如下:rows
,cols
: 表示图片尺寸.type
: 指定每个像素点的存储类型,为一系列宏定义,格式如下:CV_[每一项的位数][是否有符号][数据类型]C[通道数]
.例如:8UC3
表示3通道,每个通道的每个像素点都由8位uchar
表示;CV32FC4
表示4通道,每个通道上的每个像素点由32位float
表示.s
: 非必需项,表示每个像素点的值.Scalar
是vector
的子类.
Mat M(2,2, CV_8UC3, Scalar(0,0,255)); cout << "M = " << endl << " " << M << endl << endl;
输出:
M =[ 0, 0, 255, 0, 0, 255;0, 0, 255, 0, 0, 255]
-
使用
cv::Mat
的子类cv::Mat_
cv::Mat_
类使用泛型来替代cv::Mat
类构造函数中的type
参数来指定像素点的存储类型.这样可以避免一些运行期错误.下面程序会产生bug:
Mat M(2, 2, CV_8UC3, Scalar(0, 0, 255)); M.at<double>(0, 0) = 1; cout << "M = " << endl << " " << M << endl << endl;
输出:
M =[ 0, 0, 0, 0, 0, 0;240, 63, 0, 0, 0, 0]
可以看到,由于错误的选择了赋值给像素点的数据类型,造成了bug,但是在编译期不会报任何错误.
下面使用
cv::Mat_
类,可以看到在编译期会报warning.Mat_<Vec3b> M(2, 2, Vec3b(0, 255, 0)); M.at<double>(0, 0) = 1; cout << "M = " << endl << " " << M << endl << endl;
-
也可以使用MATLAB风格的矩阵定义方式来定义
vc::Mat
对象.Mat E = Mat::eye(4, 4, CV_64F); cout << "E = " << endl << " " << E << endl << endl; Mat O = Mat::ones(2, 2, CV_32F); cout << "O = " << endl << " " << O << endl << endl; Mat Z = Mat::zeros(3,3, CV_8UC1); cout << "Z = " << endl << " " << Z << endl << endl;
输出:
E =[1, 0, 0, 0;0, 1, 0, 0;0, 0, 1, 0;0, 0, 0, 1]O =[1, 1;1, 1]Z =[ 0, 0, 0;0, 0, 0;0, 0, 0]
-
使用ROI进行图片裁剪
#include <opencv2/core.hpp> #include <opencv2/highgui.hpp> #include <opencv2/opencv.hpp>#include <iostream>using namespace std; using namespace cv;int main() {Mat pImg = imread("lena.jpg");Rect rect(90, 100, 100, 100); //(offset_x, offset_y)=(180, 200); (width, height)=(200,200);Mat roi = Mat(pImg, rect);Mat pImgRect = pImg.clone();rectangle(pImgRect, rect, Scalar(0, 255, 0), 1);imshow("original", pImgRect);imshow("roi", roi);waitKey();return 0; }
遍历cv::Mat
对象
下面几种方法都可以遍历cv::Mat
对象进行像素值的读写:
-
使用
cv::Mat::at()
方法进行随机读写(效率最低,不推荐):Mat_<uchar> grayimg(512, 512, (uchar) 0); for (int i = 0; i < grayimg.rows; ++i) {for (int j = 0; j < grayimg.cols; ++j) {grayimg.at<uchar>(i, j) = (uchar) ((i + j) % 255);} } imshow("grayimg", grayimg);Mat_<Vec3b> colorimg(512, 512, Vec3b(0, 0, 0)); for (int i = 0; i < colorimg.rows; ++i) {for (int j = 0; j < colorimg.cols; ++j) {Vec3b pixel;pixel[0] = (uchar) (i % 255); // bluepixel[1] = (uchar) (j % 255); // greenpixel[2] = 0; // redcolorimg.at<Vec3b>(i, j) = pixel;} } imshow("colorimg", colorimg); waitKey();
-
使用迭代器(安全,但不灵活)
Mat_<uchar> grayimg(512, 512, (uchar) 0); for (MatIterator_<uchar> grayit = grayimg.begin(); grayit != grayimg.end(); ++grayit) {*grayit = (uchar) (rand() % 255); } imshow("grayimg", grayimg);Mat_<Vec3b> colorimg(512, 512, Vec3b(0, 0, 0)); for (MatIterator_<Vec3b> colorit = colorimg.begin(); colorit != colorimg.end(); ++colorit) {(*colorit)[0] = (uchar) (rand() + 100 % 255); // blue(*colorit)[1] = (uchar) (rand() + 200 % 255); // green(*colorit)[2] = (uchar) (rand() % 255); // red } imshow("colorimg", colorimg); waitKey();
-
使用指针(效率最高,但要注意数组越界问题)
使用
cv::Mat::ptr(i)
可以获取指向图像矩阵第i
行第一项的指针,实现对图像矩阵的底层读写.要理解这种遍历方法,要先理解图像矩阵在内存中的存储方式:图像矩阵在内存中是以二维数组的形式存储的,数组的行数与图片的行数相同,列数则等于图片列数×图像深度.
另外图像矩阵还存在是否连续的问题,一般来说,图像矩阵是连续的,但通过ROI裁剪等方式得到的图像矩阵有可能是不连续的,可以使用
cv::Mat::isContinuous()
方法判断图像矩阵是否连续.#include <opencv2/core.hpp> #include <opencv2/highgui.hpp> #include <opencv2/opencv.hpp>#include <iostream>using namespace std; using namespace cv;// 遍历图片矩阵 Mat &traversalImage(Mat &img) {// 获取图像的参数int channels = img.channels(); // 通道数int nRows = img.rows; // 行数int nCols = img.cols * channels; // 列数,考虑到图像矩阵的存储形式,每一行的实际元素数应为列数乘以通道数// 若图像矩阵是连续的,则只需寻址一次if (img.isContinuous()) {nCols *= nRows;nRows = 1;}// 遍历图像矩阵for (int i = 0; i < nRows; ++i) {uchar *p = img.ptr<uchar>(i);for (int j = 0; j < nCols; ++j) {p[j] = (uchar) ((i + j) % 255);}}return img; }int main() {Mat_<uchar> grayimg(512, 512, (uchar) 0);traversalImage(grayimg);Mat_<Vec3b> colorimg(512, 512, Vec3b(0, 0, 0));traversalImage(colorimg);return 0; }
例子:对图像进行color space reduction操作
对图片进行color space reduction操作可以降低灰度色阶数,提高运算速度.常见的color space reduction方式有查找表(look up table),计算表达式如下:
下面程序通过遍历实现look up table.
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/opencv.hpp>#include <iostream>using namespace std;
using namespace cv;int main() {// 读取并显示原图片Mat img = imread("C:\\Users\\chenhai\\CLionProjects\\cv_learn\\lena.jpg");if (img.empty()) {std::cout << "Could not open or find the image" << std::endl;return -1;}imshow("origin_img", img);// 遍历原图片进行 color space reduction 并展示int channels = img.channels();int nRows = img.rows;int nCols = img.cols * channels;if (img.isContinuous()) {nCols *= nRows;nRows = 1;}for (int i = 0; i < nRows; ++i) {uchar *p = img.ptr<uchar>(i);for (int j = 0; j < nCols; ++j) {p[j] = (uchar) (p[j] / 100 * 100);}}imshow("reduced_img", img);waitKey();
}
当然,OpenCV内置了cv::LUT()
函数,可以实现同样的效果:
// 构建lookuptable
Mat lookUpTable(1, 256, CV_8U);
uchar* p = lookUpTable.ptr();
for( int i = 0; i < 256; ++i)p[i] = (uchar) (i / 100 * 100);
// 进行reduction
LUT(img, lookUpTable, output_img);
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 蓝牙MESH组网地址表
JDY-24M组网可配置成路由与端终角色,其中路由角色除中继外,还支持代理与朋友节点等功能,终端角色无中继功能,主要应用于低功耗设备,网络内任意节点可与网络内所有节点之间通信(除终端睡眠节点)。 以下是JDY-24M通信图...
2024/4/17 15:35:10 - VUE-router 官方文档学习
从这篇,我们就开始看官方文档我首先用vue-cli 新建了一个项目,将所有的都删除掉了,保持最简单的目录没了,能删除的我都删除,主要是为了测试和学习上面就是App.vue 挂到根vue 中! 算了,不好理解,我画一个图吧就是说最终呢, App.vue 界面放到了 div#app 的 内!所以上面…...
2024/4/14 9:08:42 - no live upstreams while connecting to upstream [亲测解决]
最近学习了Nginx,做一些必要的笔记,一来是对自己学习的知识的巩固,二来对有同样问题的人有参考作用文章目录一 常规错误二 我的错误三 总结一 常规错误一般Nginx报错“no live upstreams while connecting to upstream”,有以下几个原因:Nginx配置文件错误,导致Nginx转发…...
2024/4/14 15:54:59 - 高精数论,最大公约数
输入格式共两行: 第一行:一个数A。 第二行:一个数B。输出格式一行,表示A和B的最大公约数。说明/提示对于20%的数据,0 < A , B ≤ 10 ^ 18。 对于100%的数据,0 < A , B ≤ 10 ^ 10000。这个数据很大,需要用到高精算法。介绍一个大佬的简单方法,调用python的库函数…...
2024/4/24 20:35:20 - Mari to Zbrush 载入置换贴图 实现脸部皮肤细节
导入在Mari中制作的置换贴图: 记得点击一下垂直翻转:因为在Mari中制作的贴图是4K的:启用贴图:添加置换贴图:把强度设置小一点,最终结果如下:...
2024/4/14 15:54:59 - 面试题-丑数
题目来源:https://leetcode-cn.com/problems/ugly-number/编写一个程序判断给定的数是否为丑数。丑数就是只包含质因数 2, 3, 5 的正整数。示例 1:输入: 6 输出: true 解释: 6 = 2 3说明:1 是丑数。输入不会超过 32 位有符号整数的范围: 。这题解法比较巧妙,一个数如果是丑…...
2024/5/7 15:53:49 - LeetCode第11题盛最多水的容器C语言实现
LeetCode第11题盛最多水的容器C语言实现 leetcode原题地址 题目描述示例:输入:[1,8,6,2,5,4,8,3,7] 输出:49题解 1.暴力破解方法 把所有可能的结果求出来,返回最大的值,代码如下: int maxArea(int* height, int heightSize)//height表示数组名,heightsize表示数组长度 {…...
2024/4/18 8:43:31 - 程序员自我修养——提问的智慧
提问的智慧How To Ask Questions The Smart Way 当你拋出一个技术问题时,最终是否能得到有用的回答,往往取决于你所提问和追问的方式。本指南将教你如何正确的提问以获得你满意的答案,教你如何从那些真正懂得你所遇到软件或硬件问题的人取得协助。 本文来源自文章目录提问的智…...
2024/4/14 15:54:54 - 练习3: 基本数据类型 (第2周)
1.天天向上的力量描述 工作日模式要努力到什么水平,才能与每天努力1%一样?…...
2024/4/14 15:54:53 - ios tabbar监听点击事件
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item {NSLog(@"%d", item.tag); }...
2024/4/23 22:29:03 - 【LeetCode】77. 组合 python实现
...
2024/5/4 16:24:42 - 爬楼梯----动态规划
题目来源 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。1 阶 + 1 阶 2 阶 示例 2:输入: 3 输出: 3 解释: 有…...
2024/5/1 11:37:06 - Autosar OS经典笔记整理:公众号(huihuige092)
** 文章版权归 糖果AUTOSAR 所有,转载请注明来源及作者, 盗版必究!! 扫描或长按二维码可关注公众号 01:AUTOSAR OS分析概述 ** — AUTOSAR OS 为实时应用提供了所有基本服务,即中断处理、调度、系统时间和时钟同步、本地消息处理,以及错误检测机制。所有服务都隐藏在…...
2024/4/14 15:54:49 - 杭电oj2039 1062 1064 1989 2734 1197
2039 判断三边是否可以构成三角形 这道题刚开始用int定义了变量是wrong,double定义后就AC了,看来题目中没说是整数变量的都要谨慎一点 #include<iostream> using namespace std; int main(){int M;double a,b,c;cin>>M;while(M--){cin>>a>>b>>c…...
2024/4/14 15:54:49 - 设计模式 - 工厂方法
工厂方法定义:定义一个创建对象的接口,但让实现中国接口的类来决定实例化哪个类 工厂方法让类的实例化推迟到子类中进行。 — 这个是核心思想 类型: 创建型适用场景创建对象需要大量的重复的代码 客户端不依赖于产品类的实例如何被创建,实现等细节 一个类通过其子类来制定创…...
2024/4/14 15:54:47 - SpringMVC工作原理
原理图:SpimgMVC工作原理 1、用户发送请求到前端控制器(DispatcherServlet)。 2、前端控制器请求处理器映射器(HandlerMapping)去查找处理器(Handler)。 3、找到以后处理器映射器(HandlerMappering)向前端控制器返回执行链(HandlerExecutionChain)。 4、前端控制器(…...
2024/4/14 15:54:46 - 触发JS事件报错“Cannot set property 'onclick' of null”
JS事件报错之“Cannot set property ‘onclick’ of null” <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>事件</title><script>var btn1 = document.getElementById(btn1);var demo1…...
2024/4/14 15:54:45 - 测验2: Python基本图形绘制 (第1周)
1.turtle八边形绘制描述 使用turtle库,绘制一个八边形。输出示例八边形效果如下:import turtle as t t.pensize(2) for i in range(8):t.fd(150)t.left(45)2.turtle八角图形绘制描述 使用turtle库,绘制一个八角图形。…...
2024/4/14 15:54:44 - Vue入门 Demo15 组件参数校验
Vue入门 Demo15 组件参数校验 <!DOCTYPE html> <html lang="en"> <head> <meta content="text/html; charset=utf-8" /> <title>组件参数校验</title> <script src="./vue.js"></script></h…...
2024/4/18 4:21:03 - 练习2: Python基本图形绘制 (第1周)
1.Python蟒蛇绘制描述 使用turtle库,绘制一个蟒蛇形状的图形。输出示例 输出效果如下:#PythonDraw.Pyimport turtle as t t.setup(650,350,200,200) #turtle.setup(width,height,startx,starty) t.penup() t.fd(-250) t.pendown() t.pensize(25) t.pencolor("purple&qu…...
2024/4/14 15:54:42
最新文章
- 面试中算法(删去n个数字后的最小值)
有一个整数,从该整数中去掉n个数字,要求剩下的数字形成的新整数尽可能小。 分析:使用栈的特性,在遍历原整数的数字时,让所有数字一个一个入栈,当某个数字需要被删除时,(即栈顶数字&g…...
2024/5/7 20:07:57 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - 字符串匹配算法之BF与KMP算法
目录 BF算法(暴力匹配算法) KMP算法 核心思想: next数组 next数组的优化 BF算法(暴力匹配算法) #include <assert.h> int BF(const char* str, const char* sub) {assert(str ! NULL && sub ! NULL);if (str NULL || sub NULL){return -1;}int…...
2024/5/4 9:41:01 - uniapp 打开抖音小程序
前提 网上查了一下都是一些打开指定用户或者视频的方法,这里就记录下如何打开小程序的方法,只支持在app下打开 实现 主要是用到了抖音的urlScheme 抖音 snssdk1128:// 小程序标头为microapp 同理还有其他的比如视频,用户等,具体…...
2024/5/7 13:47:25 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/7 5:50:09 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/7 9:45:25 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/7 14:25:14 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/7 11:36:39 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/4 23:55:17 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/7 9:26:26 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/4 23:55:06 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/4 23:55:16 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/6 21:42:42 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57