当前位置: 首页 > news >正文

云南seo/夫唯老师seo

云南seo,夫唯老师seo,网页实训内容及过程,正规的佛山网站建设OpenCV基本数据类型实战 〇、实战内容1 OpenCV helloworld1.1 文件结构类型1.2 CMakeList.txt1.3 Helloworld 2. Image的基本操作3. OpenCV 基本数据类型4. 读取图片的像素 & 遍历图片4.1 获取制定像素4.2 遍历图片 5. 图片反色5.1 方法1 :遍历5.2 方法2 &#…

OpenCV基本数据类型实战

    • 〇、实战内容
    • 1 OpenCV helloworld
        • 1.1 文件结构类型
        • 1.2 CMakeList.txt
        • 1.3 Helloworld
    • 2. Image的基本操作
    • 3. OpenCV 基本数据类型
    • 4. 读取图片的像素 & 遍历图片
        • 4.1 获取制定像素
        • 4.2 遍历图片
    • 5. 图片反色
        • 5.1 方法1 :遍历
        • 5.2 方法2 :矩阵减法
    • 6. 矩阵基本运算

〇、实战内容

  1. OpenCV helloworld
  2. Image的基本操作
  3. OpenCV 基本数据类型
  4. 遍历图片,读取图片的像素
  5. 图片反色
  6. 矩阵基本操作

1 OpenCV helloworld

1.1 文件结构类型

assign_1build [cmake build所用]assign_1.cppCMakeLists.txtimg.webp

图片地址

1.2 CMakeList.txt

cmake_minimum_required(VERSION 3.10)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)
project(assign1)
find_package(OpenCV 3 REQUIRED HINTS /usr/local/opt/opencv@3) 
add_executable(assign1 assign_1.cpp)
target_link_libraries(assign1 ${OpenCV_LIBS})
  1. cmake 3.10版本
  2. 使用C++ 11
  3. project 名字为assign1
  4. find_package寻找opencv@3库

1.3 Helloworld

assign_1.cpp

#include <opencv2/opencv.hpp>
#include <iostream>
#include <vector>
#include <string>using namespace cv;
using namespace std;int main(int argc, char *argv[])
{Mat image = imread("/Users/..../computerphotography/course_zhengjiangdaxue/opencv-logo.png"); // 载入名为 "opencv-logo.png" 的图片namedWindow("hello");    // 创建一个标题为 "hello" 的窗口imshow("hello", result); // 在窗口 "hello" 中显示图片waitKey(0);              // 等待用户按下键盘destroyWindow("hello");  // 销毁窗口 "hello"return 0;
}

2. Image的基本操作

#include <opencv2/opencv.hpp>
#include <iostream>
#include <vector>
#include <string>
using namespace cv;
using namespace std;int main(int argc, char *argv[])
{Mat image = imread("/Users/..../computerphotography/course_zhengjiangdaxue/opencv-logo.png"); // 载入名为 "opencv-logo.png" 的图片cout << "image size 1: " << image.size() << endl;cout << "image 行数: " << image.rows << endl;cout << "image 列数: " << image.cols << endl;cout << "image 通道数: " << image.channels() << endl;cout << "image type: " << image.type() << endl;return 0;
}

输出结果

image size 1: [200 x 200]
image 行数: 200
image 列数: 200
image 通道数: 3
image type: 16

3. OpenCV 基本数据类型

int main(int argc, char *argv[])
{cout << "CV_8UC1:" << CV_8UC1 << endl;cout << "CV_8UC2:" << CV_8UC2 << endl;cout << "CV_8UC3:" << CV_8UC3 << endl;cout << "CV_8UC4:" << CV_8UC4 << endl;cout << "CV_8UC5:" << CV_8UC(5) << endl;cout << "CV_8SC1:" << CV_8SC1 << endl;cout << "CV_8SC2:" << CV_8SC2 << endl;cout << "CV_8SC3:" << CV_8SC3 << endl;cout << "CV_8SC4:" << CV_8SC4 << endl;cout << "CV_8SC5:" << CV_8SC(5) << endl;cout << "CV_16UC1:" << CV_16UC1 << endl;cout << "CV_16UC2:" << CV_16UC2 << endl;cout << "CV_16UC3:" << CV_16UC3 << endl;cout << "CV_16UC4:" << CV_16UC4 << endl;cout << "CV_16UC5:" << CV_16UC(5) << endl;cout << "CV_16SC1:" << CV_16SC1 << endl;cout << "CV_32SC1:" << CV_32SC1 << endl;cout << "CV_32FC1:" << CV_32FC1 << endl;cout << "CV_64FC1:" << CV_64FC1 << endl;
}

输出结果

CV_8UC1:0
CV_8UC2:8
CV_8UC3:16
CV_8UC4:24
CV_8UC5:32
CV_8SC1:1
CV_8SC2:9
CV_8SC3:17
CV_8SC4:25
CV_8SC5:33
CV_16UC1:2
CV_16UC2:10
CV_16UC3:18
CV_16UC4:26
CV_16UC5:34
CV_16SC1:3
CV_32SC1:4
CV_32FC1:5
CV_64FC1:6
  1. CV_8UC1 8字节无符号类型,通道为1
  2. CV_8UC3 8字节无符号类型,通道为3 即一个长度为3的数据例如[255,255,255] 三通道基本代表R, G, B
  3. image.type() == 16 == CV_8UC3 即改图片是3通道
  4. 单通道,增加一通道,值增加8
    CV_8UC1->0 -> uchar
    CV_8SC1->1 -> char
    CV_16UC1->2 -> ushort
    CV_16SC1->3 -> short
    CV_32SC1->4 -> int
    CV_32FC1->5 -> float
    CV_64FC1->6 -> double

4. 读取图片的像素 & 遍历图片

4.1 获取制定像素

int main(int argc, char *argv[])
{// 3. 获取某一个像素值cout << "image at 0: " << image.at<Vec3b>(0) << endl;cout << "image at 10000000: " << image.at<Vec3b>(10000000) << endl;cout << "image at 39999: " << image.at<Vec3b>(39999) << endl;cout << "image at 199,199: " << image.at<Vec3b>(199, 199) << endl;}

输出:

image at 0: [255, 255, 255]
image at 10000000: [0, 0, 0]
image at 39999: [255, 255, 255]
image at 199,199: [255, 255, 255]
  1. at方法
    a. 需要制定对应的类型,单通道见Section3 说明;二通道Vec2b Vec2i Vec2f Vec2d
    b. 参数可为1个,200 * 200 即 0<=index <=39999;参数为2个,则对应的行和列
  2. 超出索引也可获取值

4.2 遍历图片

int main(int argc, char *argv[])
{// //5. 遍历图片像素,方法1,便利,判断是白色,赋值为黑色for(int i = 0;i<image.rows;i++){for(int j=0;j<image.cols;j++){if(image.at<Vec3b>(i,j) == white){image.at<Vec3b>(i,j) = black;}}}}

5. 图片反色

5.1 方法1 :遍历

int main(int argc, char *argv[])
{Vec3b white(255, 255, 255);for(int i = 0;i<image.rows;i++){for(int j=0;j<image.cols;j++){image.at<Vec3b>(i,j) = white - image.at<Vec3b>(i,j);}}
}
  1. 定义白色Vec3b white(255, 255, 255);
  2. 遍历图片用white减去每个像素颜色

5.2 方法2 :矩阵减法

  Mat m(image.rows,image.cols,CV_8UC3,Scalar(255,255,255));image = m-image;
  1. Mat 代表opencv里的矩阵
  2. 初始化的时候传入行数,列数,每个像素的数据格式,以及初始值
    a. 如果CV_8UC1 就是Scalar(255)
    b. 如果CV_8UC2 就是Scalar(255, 255)
  3. 初始化了一个CV_8UC3, 和原始图片一样大的矩阵,然后做减法

6. 矩阵基本运算

int main(){Mat origin(10, 10, CV_32FC1, Scalar(0));for (int i = 0; i < 10; i++){for (int j = 0; j < 10; j++){if (i == j){cout << "i=" << i << "j=" << j << endl;origin.at<float>(i, j) = 2.0;}else if ((i == j - 1) || (i == j + 1)){origin.at<float>(i, j) = -1.0;}}}// 矩阵 的逆Mat invert = origin.inv();cout << "origin mat:"<<endl;print(origin);cout << endl<<"invert mat:"<<endl;print(invert);//矩阵加法cout << endl<< "add mat:"<<endl;origin = origin+invert;print(origin);//矩阵乘法cout << endl<< "multiply mat:"<<endl;origin = origin*invert;print(origin);//初始化对角线cout << endl<< "eye mat:"<<endl;Mat eye = Mat::eye(10,10,CV_32FC1);print(eye);cout << endl<< "normalize mat:"<<endl;Mat result;//归一化,最大的位白色,最小的为黑色normalize(invert, result, 1.0, 0.0, CV_MINMAX);// 现实窗口逻辑print(result);cout << endl;return 0;
}

输出结果:

origin mat:
[2, -1, 0, 0, 0, 0, 0, 0, 0, 0;-1, 2, -1, 0, 0, 0, 0, 0, 0, 0;0, -1, 2, -1, 0, 0, 0, 0, 0, 0;0, 0, -1, 2, -1, 0, 0, 0, 0, 0;0, 0, 0, -1, 2, -1, 0, 0, 0, 0;0, 0, 0, 0, -1, 2, -1, 0, 0, 0;0, 0, 0, 0, 0, -1, 2, -1, 0, 0;0, 0, 0, 0, 0, 0, -1, 2, -1, 0;0, 0, 0, 0, 0, 0, 0, -1, 2, -1;0, 0, 0, 0, 0, 0, 0, 0, -1, 2]
invert mat:
[0.90909088, 0.81818181, 0.72727281, 0.63636357, 0.54545444, 0.45454538, 0.36363626, 0.27272728, 0.18181814, 0.090909071;0.81818181, 1.6363636, 1.4545456, 1.2727271, 1.0909089, 0.90909076, 0.72727251, 0.54545456, 0.36363629, 0.18181814;0.72727281, 1.4545456, 2.1818185, 1.9090908, 1.6363634, 1.3636361, 1.0909088, 0.81818181, 0.54545444, 0.27272722;0.63636369, 1.2727274, 1.909091, 2.5454543, 2.1818178, 1.8181814, 1.4545449, 1.090909, 0.72727257, 0.36363629;0.54545456, 1.0909091, 1.6363636, 2.1818178, 2.7272723, 2.2727268, 1.8181812, 1.3636363, 0.9090907, 0.45454535;0.45454544, 0.90909088, 1.3636363, 1.8181814, 2.2727268, 2.7272723, 2.1818175, 1.6363635, 1.0909089, 0.54545444;0.36363637, 0.72727275, 1.090909, 1.4545451, 1.8181815, 2.1818178, 2.545454, 1.9090909, 1.2727271, 0.63636357;0.27272728, 0.54545456, 0.81818181, 1.0909089, 1.3636363, 1.6363634, 1.9090906, 2.1818182, 1.4545454, 0.72727269;0.18181817, 0.36363634, 0.54545456, 0.72727257, 0.90909082, 1.0909089, 1.2727271, 1.4545454, 1.6363635, 0.81818175;0.090909094, 0.18181819, 0.27272728, 0.36363631, 0.45454541, 0.54545444, 0.63636357, 0.72727275, 0.81818175, 0.90909088]
add mat:
[2.909091, -0.18181819, 0.72727281, 0.63636357, 0.54545444, 0.45454538, 0.36363626, 0.27272728, 0.18181814, 0.090909071;-0.18181819, 3.6363635, 0.45454562, 1.2727271, 1.0909089, 0.90909076, 0.72727251, 0.54545456, 0.36363629, 0.18181814;0.72727281, 0.45454562, 4.1818185, 0.90909076, 1.6363634, 1.3636361, 1.0909088, 0.81818181, 0.54545444, 0.27272722;0.63636369, 1.2727274, 0.909091, 4.545454, 1.1818178, 1.8181814, 1.4545449, 1.090909, 0.72727257, 0.36363629;0.54545456, 1.0909091, 1.6363636, 1.1818178, 4.727272, 1.2727268, 1.8181812, 1.3636363, 0.9090907, 0.45454535;0.45454544, 0.90909088, 1.3636363, 1.8181814, 1.2727268, 4.727272, 1.1818175, 1.6363635, 1.0909089, 0.54545444;0.36363637, 0.72727275, 1.090909, 1.4545451, 1.8181815, 1.1818178, 4.545454, 0.90909088, 1.2727271, 0.63636357;0.27272728, 0.54545456, 0.81818181, 1.0909089, 1.3636363, 1.6363634, 0.90909064, 4.181818, 0.45454538, 0.72727269;0.18181817, 0.36363634, 0.54545456, 0.72727257, 0.90909082, 1.0909089, 1.2727271, 0.45454538, 3.6363635, -0.18181825;0.090909094, 0.18181819, 0.27272728, 0.36363631, 0.45454541, 0.54545444, 0.63636357, 0.72727275, -0.18181825, 2.909091]
multiply mat:
[4.181818, 5.4545455, 6.909091, 7.6363621, 7.7272706, 7.2727251, 6.3636341, 5.0909085, 3.5454535, 1.8181813;5.454545, 11.090909, 13.090909, 14.63636, 14.909087, 14.090905, 12.363631, 9.9090891, 6.9090891, 3.5454535;6.9090915, 13.09091, 18.818182, 20.363632, 20.999994, 19.999994, 17.636356, 14.181816, 9.9090881, 5.0909076;7.636363, 14.636362, 20.363634, 25.18181, 25.454536, 24.545444, 21.818171, 17.63636, 12.363632, 6.3636341;7.727272, 14.909089, 20.999996, 25.454536, 28.727262, 27.272717, 24.545443, 19.999994, 14.090904, 7.2727246;7.2727261, 14.090907, 19.999996, 24.545444, 27.272717, 28.727262, 25.454533, 20.999994, 14.909085, 7.7272701;6.3636355, 12.363635, 17.636362, 21.818174, 24.545446, 25.454536, 25.181808, 20.363632, 14.63636, 7.6363616;5.090909, 9.90909, 14.181817, 17.636358, 19.999994, 20.999994, 20.36363, 18.81818, 13.090906, 6.9090896;3.5454543, 6.9090905, 9.90909, 12.363633, 14.090905, 14.909086, 14.636359, 13.090907, 11.090907, 5.4545441;1.8181818, 3.5454545, 5.090909, 6.3636351, 7.2727256, 7.7272706, 7.6363616, 6.9090905, 5.4545445, 4.181818]
eye mat:
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0;0, 1, 0, 0, 0, 0, 0, 0, 0, 0;0, 0, 1, 0, 0, 0, 0, 0, 0, 0;0, 0, 0, 1, 0, 0, 0, 0, 0, 0;0, 0, 0, 0, 1, 0, 0, 0, 0, 0;0, 0, 0, 0, 0, 1, 0, 0, 0, 0;0, 0, 0, 0, 0, 0, 1, 0, 0, 0;0, 0, 0, 0, 0, 0, 0, 1, 0, 0;0, 0, 0, 0, 0, 0, 0, 0, 1, 0;0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
normalize mat:
[0.31034487, 0.27586213, 0.24137938, 0.20689656, 0.17241378, 0.13793103, 0.10344826, 0.068965539, 0.034482758, 1.3546499e-09;0.27586213, 0.58620697, 0.51724154, 0.44827589, 0.37931034, 0.31034482, 0.24137928, 0.17241383, 0.10344827, 0.034482758;0.24137938, 0.51724154, 0.79310369, 0.68965524, 0.58620691, 0.48275861, 0.37931028, 0.27586213, 0.17241378, 0.068965517;0.2068966, 0.44827598, 0.6896553, 0.93103451, 0.7931034, 0.65517235, 0.51724124, 0.37931037, 0.24137929, 0.10344827;0.17241383, 0.37931043, 0.58620697, 0.7931034, 1, 0.82758617, 0.65517229, 0.48275867, 0.31034482, 0.13793102;0.13793106, 0.31034487, 0.48275867, 0.65517235, 0.82758617, 1, 0.79310334, 0.58620691, 0.37931034, 0.17241378;0.1034483, 0.24137937, 0.37931037, 0.51724136, 0.65517241, 0.7931034, 0.93103445, 0.68965524, 0.44827589, 0.20689656;0.068965539, 0.17241383, 0.27586213, 0.37931034, 0.48275867, 0.58620691, 0.68965518, 0.79310358, 0.51724142, 0.24137934;0.03448277, 0.10344829, 0.17241383, 0.24137929, 0.31034485, 0.37931034, 0.44827589, 0.51724142, 0.58620691, 0.2758621;9.8328981e-09, 0.034482773, 0.068965539, 0.10344828, 0.13793105, 0.17241378, 0.20689656, 0.24137937, 0.2758621, 0.31034487]
a123456@lucky build % 

相关文章:

【OpenCV实战】2.OpenCV基本数据类型实战

OpenCV基本数据类型实战 〇、实战内容1 OpenCV helloworld1.1 文件结构类型1.2 CMakeList.txt1.3 Helloworld 2. Image的基本操作3. OpenCV 基本数据类型4. 读取图片的像素 & 遍历图片4.1 获取制定像素4.2 遍历图片 5. 图片反色5.1 方法1 &#xff1a;遍历5.2 方法2 &#…...

MyBatis进阶:告别SQL注入!MyBatis分页与特殊字符的正确使用方式

目录 引言 一、使用正确的方式实现分页 1.1.什么是分页 1.2.MyBatis中的分页实现方式 1.3.避免SQL注入的技巧 二、特殊字符的正确使用方式 2.1.什么是特殊字符 2.2.特殊字符在SQL查询中的作用 2.3.如何避免特殊字符引起的问题 2.3.1.使用CDATA区段 2.3.2.使用实体引…...

安装Node(脚手架)

目录 一&#xff0c;安装node&#xff08;脚手架&#xff09;1.1&#xff0c; 配置vue.config.js1.2&#xff0c; vue-cli3x的目录介绍1.3&#xff0c; package.json 最后 一&#xff0c;安装node&#xff08;脚手架&#xff09; 从官网直接下载安装即可&#xff0c;自带npm包管…...

R语言10-R语言中的循环结构

在R语言中&#xff0c;有几种常用的循环结构&#xff0c;可以用来多次执行特定的代码块。以下是其中的两种主要循环结构&#xff1a; for循环&#xff1a; for 循环用于按照一定的步长迭代一个序列&#xff0c;通常用于执行固定次数的循环。 for (i in 1:5) {print(i) }while…...

【Spring】一次性打包学透 Spring | 阿Q送书第五期

文章目录 如何竭尽可能确保大家学透Spring1. 内容全面且细致2. 主题实用且本土化3. 案例系统且完善4. 知识有趣且深刻 关于作者丁雪丰业内专家推图书热卖留言提前获赠书 不知从何时开始&#xff0c;Spring 这个词开始频繁地出现在 Java 服务端开发者的日常工作中&#xff0c;很…...

第 7 章 排序算法(4)(插入排序)

7.7插入排序 7.7.1插入排序法介绍: 插入式排序属于内部排序法&#xff0c;是对于欲排序的元素以插入的方式找寻该元素的适当位置&#xff0c;以达到排序的目的。 7.7.2插入排序法思想: 插入排序&#xff08;Insertion Sorting&#xff09;的基本思想是&#xff1a;把n个待排…...

JavsScript知识框架

JavaScript学习框架性总结 要系统性地精通 JavaScript&#xff0c;需要涵盖广泛的知识点&#xff0c;从基础到高级。以下是一些需要掌握的关键知识点&#xff08;当然不止这些&#xff09;&#xff1a; 基础语法和核心概念&#xff1a; 变量、数据类型、运算符作用域闭包this …...

el-input添加自定义指令只允许输入中文/英文/数字,兼容输入法事件

省流 script: directives: {regexp: {inserted: (el, binding, vnode) > {let composition falseconst formatValue function (e) {if (composition) return// vnode.componentInstance组件实例vnode.componentInstance.$emit(input, e.target.value.replace(/[^\u4e00-…...

0基础学习VR全景平台篇 第89篇:智慧眼-安放热点

一、功能说明 安放热点&#xff0c;是智慧眼成员们正式进入城市化管理的第一步&#xff0c;即发现问题后以安放热点的形式进行标记&#xff0c;再由其他的角色成员对该热点内容作出如核实、处理、确认完结等操作&#xff08;具体流程根据项目实际情况而定&#xff09;。 二、…...

java中用SXSSFWorkbook把多个list数据和单个实体dto导出到excel如何导出到多个sheet页详细实例?(亲测)

以下是一个详细的示例&#xff0c;展示了如何使用SXSSFWorkbook将多个List数据和单个实体DTO导出到多个Sheet页&#xff1a; import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.streaming.SXSSFSheet; import org.apache.poi.xssf.streaming.S…...

SpringBoot 01 如何创建 和pom的解析

目录 1 Springboot的创建 步骤 2 项目的书写和运行 创建service包并在其下写一个service文件 项目的运行 pom文件的一些配置 parent web test 打包 打包过程 1 Springboot的创建 步骤 首先new一个新项目 然后依照如下创建 2 项目的书写和运行 创建service包并…...

axios详解

1.安装axios&#xff1a;npm install axios&#xff0c;等待安装完毕即可 2.引用axios&#xff1a;在需要使用的页面中引用 import axios from axios即可 get和post大同小异&#xff0c;一个是跟在url后面一个是跟在请求体里的 axios({method&#xff1a;"post/get&quo…...

Docker分布式仓库

Harbor 是一个用于存储和分发 Docker 镜像的企业级 Registry 服务器&#xff0c;由 vmware 开源&#xff0c;其通过添加一些企业必需的功能特性&#xff0c;例如安全、标识和管理等&#xff0c;扩展了开源 Docker Distribution。作为一个企业级私有 Registry 服务器&#xff0c…...

SQL注入之万能用户名

文章目录 分析代码原理实现 分析代码 在安装的cms数据库目录C:\phpStudy\WWW\cms\admin下找到login.action.php文件&#xff0c;查看第20行&#xff0c;发现如下php代码&#xff1a; $user_row $db->getOneRow("select userid from cms_users where username "…...

ubuntu20搭建环境使用的一下指令

1.更新源 sudo vim etc/apt/sources.listdeb http://mirrors.aliyun.com/ubuntu/ xenial main deb-src http://mirrors.aliyun.com/ubuntu/ xenial maindeb http://mirrors.aliyun.com/ubuntu/ xenial-updates main deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates…...

GAN(生成对抗网络)

简介&#xff1a;GAN生成对抗网络本质上是一种思想&#xff0c;其依靠神经网络能够拟合任意函数的能力&#xff0c;设计了一种架构来实现数据的生成。 原理&#xff1a;GAN的原理就是最小化生成器Generator的损失&#xff0c;但是在最小化损失的过程中加入了一个约束&#xff0…...

实时同步ES技术选型:Mysql+Canal+Adapter+ES+Kibana

基于之前的文章&#xff0c;精简操作而来 让ELK在同一个docker网络下通过名字直接访问Ubuntu服务器ELK部署与实践使用 Docker 部署 canal 服务实现MySQL和ES实时同步Docker部署ES服务&#xff0c;canal全量同步的时候内存爆炸&#xff0c;ES/Canal Adapter自动关闭&#xff0c…...

禅道后台命令执行漏洞

漏洞简介 禅道是第一款国产的开源项目管理软件。它集产品管理、项目管理、质量管理、文档管理、 组织管理和事务管理于一体&#xff0c;是一款专业的研发项目管理软件&#xff0c;完整地覆盖了项目管理的核心流程。 禅道管理思想注重实效&#xff0c;功能完备丰富&#xff0c;…...

基于Spark+django的国漫推荐系统--计算机毕业设计项目

近年来&#xff0c;随着互联网的蓬勃发展&#xff0c;企事业单位对信息的管理提出了更高的要求。以传统的管理方式已无法满足现代人们的需求。为了迎合时代需求&#xff0c;优化管理效率&#xff0c;各种各样的管理系统应运而生&#xff0c;随着各行业的不断发展&#xff0c;基…...

向量数据库 Milvus:实现高效向量搜索的技术解析

引言 随着人工智能、机器学习和深度学习技术的不断发展&#xff0c;越来越多的应用开始使用向量表示数据。向量数据具有高维、稀疏和相似性等特点&#xff0c;传统的关系型数据库和键值存储在处理这类数据时面临许多挑战。为了满足大规模、高并发的向量搜索需求&#xff0c;出现…...

恒运资本:信创概念再度活跃,华是科技再创新高,南天信息等涨停

信创概念21日盘中再度活跃&#xff0c;截至发稿&#xff0c;华是科技涨超17%&#xff0c;盘中一度触及涨停再创新高&#xff0c;中亦科技涨超13%亦创出新高&#xff0c;久其软件、南天信息、新炬网络、英飞拓均涨停。 音讯面上&#xff0c;自8月3日以来&#xff0c;财政部官网连…...

Synchronized锁升级

Java Synchronized 重量级锁原理深入剖析上(互斥篇) 为什么映入Monitor 处在重量级锁状态时说明有线程没拿到锁需要阻塞等待锁&#xff0c;当拥有锁的线程释放锁后唤醒它继续竞争锁。此处就引入了一个问题&#xff1a;其它线程如何找到被阻塞的线程&#xff1f;我们很容易想到…...

记一个宏定义写法

记一个宏定义写法 最近在看libevent源码&#xff0c;看到一个有趣的宏写法。特此记录。方便日后巩固学习。 源码写法&#xff1a; #define HT_FIND(name, head, elm) name##_HT_FIND((head), (elm))首先来简单分析一下&#xff1a; 定睛一看是一个宏&#xff0c;##是连接符…...

【数据结构】C语言实现栈(详细解读)

前言: &#x1f4a5;&#x1f388;个人主页:​​​​​​Dream_Chaser&#xff5e; &#x1f388;&#x1f4a5; ✨✨专栏:http://t.csdn.cn/oXkBa ⛳⛳本篇内容:c语言数据结构--C语言实现栈 目录 什么是栈 栈的概念及结构 实现栈的方式 链表的优缺点: 顺序表的优缺点: 栈…...

3、Spring_容器执行

容器执行点 1.整合 druid 连接池 添加依赖 <dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.2.8</version> </dependency>1.硬编码方式整合 新建德鲁伊配置 <?xml version"1.…...

五、pikachu之RCE

文章目录 1、RCE概述2、exec "ping"3、exec"evel"4、连接符 1、RCE概述 RCE&#xff08;emote command/code execute&#xff09;&#xff1a;可以让攻击者直接向后台服务器远程注入操作系统命令或者代码&#xff0c;从而控制后台系统。 远程系统命令执行 …...

最大不相交区间数量

给定 N 个闭区间 [ai,bi]&#xff0c;请你在数轴上选择若干区间&#xff0c;使得选中的区间之间互不相交&#xff08;包括端点&#xff09;。 输出可选取区间的最大数量。 输入格式 第一行包含整数 N&#xff0c;表示区间数。 接下来 N 行&#xff0c;每行包含两个整数 ai,…...

Oracle给表空间添加容量

假如给SYSTEM表空间添加 查看文件位置和容量&#xff1a;Select * FROM DBA_DATA_FILES; FILE_NAME就是要修改的文件 查看每一个表空间的容量&#xff0c;单位MB&#xff1a; SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size FROM dba_tablespaces…...

2023年大数据与区块链国际会议 | EI、Scoups检索

会议简介 Brief Introduction 2023年大数据与区块链国际会议&#xff08;ICBDB 2023&#xff09; 会议时间&#xff1a;2023年11月17 -19日 召开地点&#xff1a;中国西安 大会官网&#xff1a;www.icobdb.org 2023年大数据与区块链国际会议&#xff08;ICBDB 2023&#xff09;…...

【洛谷算法题】P1000-超级玛丽游戏【入门1顺序结构】

&#x1f468;‍&#x1f4bb;博客主页&#xff1a;花无缺 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P1000-超级玛丽游戏【入门1顺序结构】&#x1f30f;题目描述&#x1f30f;输入格…...