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

温州市网络公司网站建设公司网站后台怎样批量上传

温州市网络公司网站建设公司,网站后台怎样批量上传,h5制作小程序有哪些,软件开发技术文档目录 一、图像操作 1、读写图像 2、读写像素 3、修改像素值 4、Vec3b与Vec3F 5、相关的代码演示 二、图像混合 1、理论-线性混合操作 2、相关API(addWeighted) 3、代码演示#xff08;完整的例子#xff09; 一、图像操作 1、读写图像 #xff08;1#xff09;…目录 一、图像操作 1、读写图像 2、读写像素 3、修改像素值 4、Vec3b与Vec3F 5、相关的代码演示 二、图像混合 1、理论-线性混合操作 2、相关API(addWeighted) 3、代码演示完整的例子 一、图像操作 1、读写图像 1imread 可以指定加载为灰度或者RGB图像 2Imwrite 保存图像文件类型由扩展名决定 2、读写像素 1读一个GRAY像素点的像素值CV_8UC1 Scalar intensity img.atuchar(y, x); 或者 Scalar intensity img.atuchar(Point(x, y)); 2读一个RGB像素点的像素值 Vec3f intensity img.atVec3f(y, x); float blue intensity.val[0]; float green intensity.val[1]; float red intensity.val[2]; 3、修改像素值 1灰度图像 img.atuchar(y, x) 128; 2RGB三通道图像 img.atVec3b(y,x)[0]128; // blue img.atVec3b(y,x)[1]128; // green img.atVec3b(y,x)[2]128; // red 3空白图像赋值 img Scalar(0); 4ROI选择 Rect r(10, 10, 100, 100); Mat smallImg img(r); 4、Vec3b与Vec3F 1Vec3b对应三通道的顺序是blue、green、red的uchar类型数据。 2Vec3f对应三通道的float类型数据 3把CV_8UC1转换到CV32F1实现如下 src.convertTo(dst, CV_32F); 5、相关的代码演示 #include opencv2/core/core.hpp #include opencv2/imgcodecs.hpp #include opencv2/opencv.hpp #include opencv2/highgui/highgui.hpp #include iostreamusing namespace cv; using namespace std; int main(int argc, char** args) {Mat image imread(D:/test.jpg, IMREAD_COLOR);if (image.empty()) {cout could not find the image resource... std::endl;return -1;}Mat grayImg;cvtColor(image, grayImg, COLOR_BGR2GRAY);Mat sobelx; Sobel(grayImg, sobelx, CV_32F, 1, 0);double minVal, maxVal;minMaxLoc(sobelx, minVal, maxVal); //find minimum and maximum intensitiesMat draw;sobelx.convertTo(draw, CV_8U, 255.0 / (maxVal - minVal), -minVal * 255.0 / (maxVal - minVal));/*int height image.rows;int width image.cols;int channels image.channels();printf(height%d width%d channels%d, height, width, channels);for (int row 0; row height; row) {for (int col 0; col width; col) {if (channels 3) {image.atVec3b(row, col)[0] 0; // blueimage.atVec3b(row, col)[1] 0; // green}}}*/namedWindow(My Image, CV_WINDOW_AUTOSIZE);imshow(My Image, draw);waitKey(0);return 0; } 效果展示 bitwise_not(这接口使用逐位取反 #includeopencv2\opencv.hpp #includeiostreamusing namespace cv;int main() {Mat src, dst;src imread(test.jpg);if (!src.data){printf(could not load image...\n);}namedWindow(input image, CV_WINDOW_AUTOSIZE);imshow(input image, src);// 单通道的MatMat gray_src;cvtColor(src, gray_src, COLOR_RGB2GRAY);// 颜色空间的转换int nc src.channels();// 图像像素操作取反后看输出是什么样子for (int row 0; row src.rows; row){for (int col 0; col src.cols; col){if (nc 1){int gray gray_src.atuchar(row, col);gray_src.atuchar(row, col) 255 - gray;}else if (nc 3){int b src.atVec3b(row, col)[0];int g src.atVec3b(row, col)[1];int r src.atVec3b(row, col)[2];dst.atVec3b(row, col)[0] 255 - b;dst.atVec3b(row, col)[1] 255 - g;dst.atVec3b(row, col)[2] 255 - r;//取最大值为灰度像素值//gray_src.atuchar(row, col) max(r, max(b, g));//取最小值为灰度像素值//gray_src.atuchar(row, col) min(r, min(b, g));}}}// 最后一个if的操作就是3色通道的rgb都取反可以用下面的接口代替//bitwise_not(src, dst);//能实现一样的效果namedWindow(mask_result, CV_WINDOW_AUTOSIZE);imshow(mask_result, dst);//imshow(mask_result, gray_src); //输出灰色图像waitKey(0);return 0;} 运行代码得出最后的效果 二、图像混合 1、理论-线性混合操作 其中      的取值范围为0~1之间 2、相关API(addWeighted) addWeighted 是OpenCV中的一个函数用于对两个图像进行加权相加。它可以用于图像融合、图像混合以及图像叠加等应用。 函数原型如下 void cv::addWeighted(InputArray src1,double alpha,InputArray src2,double beta,double gamma,OutputArray dst,int dtype -1)参数说明 src1第一个输入图像。alpha第一个输入图像的权重。src2第二个输入图像。beta第二个输入图像的权重。gamma加到结果上的标量值。dst输出图像与输入图像具有相同的尺寸和类型。dtype可选参数指定输出图像的数据类型默认为-1表示与输入图像保持一致。 关键代码实现 cv::Mat image1 cv::imread(image1.jpg); cv::Mat image2 cv::imread(image2.jpg);cv::Mat blendedImage; double alpha 0.5; // 第一个图像的权重double beta 0.5; // 第二个图像的权重double gamma 0.0; // 加到结果上的标量值cv::addWeighted(image1, alpha, image2, beta, gamma, blendedImage);cv::imshow(Blended Image, blendedImage); cv::waitKey(0);代码将加载两张图像然后用 addWeighted 函数将它们进行加权相加并将结果显示在窗口中。 你可以根据实际需求调整 alpha、beta 和 gamma 的值以及选择不同的图像作为输入来实现不同的效果。 3、代码演示完整的例子 #include opencv2/opencv.hpp #include iostreamusing namespace std; using namespace cv;int main(int argc, char** argv) {Mat src1, src2, dst;src1 imread(D:/vcprojects/images/LinuxLogo.jpg);src2 imread(D:/vcprojects/images/win7logo.jpg);if (!src1.data) {cout could not load image Linux Logo... endl;return -1;}if (!src2.data) {cout could not load image WIN7 Logo... endl;return -1;}double alpha 0.5;if (src1.rows src2.rows src1.cols src2.cols src1.type() src2.type()) {// addWeighted(src1, alpha, src2, (1.0 - alpha), 0.0, dst);// multiply(src1, src2, dst, 1.0);imshow(linuxlogo, src1);imshow(win7logo, src2);namedWindow(blend demo, CV_WINDOW_AUTOSIZE);imshow(blend demo, dst);}else {printf(could not blend images , the size of images is not same...\n);return -1;}waitKey(0);return 0; } 效果如下
http://www.dnsts.com.cn/news/16360.html

相关文章:

  • dw做企业网站主机屋 建网站教程
  • 17网站一起做网店睡衣手机网站设计方案
  • 建设摩托官方网站u爽龙里县建设局管方网站
  • 装饰公司网站源码深圳市深圳市住房和建设局网站首页
  • 湖南省交通建设质量安全监督管理局网站网站推广营销公司
  • 网站设计如何收费标准网站开发美工总结
  • 网站布局分类专业做邯郸网站优化
  • 网页设计师个人网站遵义网站建设推广
  • 中小企业网站建设行情最新网站推广哪家好
  • 做网站编辑要会什么东莞网站建设网页推广
  • 网站服务器排名前十网站活动平台推广计划
  • 只做网站河南省豫建设计院网站
  • 朔州市住房与城乡建设厅网站酒店vi设计
  • 自学搭建网站wordpress无法连接ftf服务器
  • 公众号开发源码佛山企业推广优化
  • wordpress适合视频网站吗贵阳网站建设黔搜
  • 宁夏网站设计联系电话百度seo原理
  • dedecms 做的医院网站jsp网站服务建设开题报告
  • 建站行业现状探讨专门找事做的网站
  • 大唐网站首页青岛房产网上查询
  • 网站需求表格网站建设与设计教程
  • 2018做网站用什么开发怎么做卖保险的网站
  • 莱芜网站建设流程百度改网站描述
  • html情人节给女朋友做网站怎样查询网站的备案号
  • 2013影响网站百度搜索排名的关键因素统计百度网站降级的原因
  • 建设网站赚钱昆明高端网站建设
  • 如何在百度云上建设网站绩溪建设银行网站
  • 网站忧化工作怎么样曰本免费一级a做爰视频网站
  • 建设网站需要营业执照吗青岛博海建设网站
  • 视频在线观看网站怎么建设郑州妇科医院哪家排名比较好