1个回答

CNN算法 人脸识别程序代码

c语言以二进制读取图片问题

OFDM调制信号经过瑞利衰落信道matlab怎么仿真？

C++代码优化，以缩短时间为先（仅从代码分析）图片无法由于格式无法上传。麻烦

#include "stdio.h" #include "stdlib.h" #include "math.h" #include <iostream> #include <time.h> #define SUPPORT_SIZE 2 // 高斯滤波窗口半径 #define IM_WIDTH 1920 // 输入图像宽和高 #define IM_HEIGHT 1080 // 计算高斯系数 void calGaussCoef(double *pGaussCoef) { int i, j, k; int wlen = (SUPPORT_SIZE<<1) + 1; double sum = 0; if(pGaussCoef) { for(i = -SUPPORT_SIZE; i <= SUPPORT_SIZE; ++i) { for(j = -SUPPORT_SIZE; j <= SUPPORT_SIZE; ++j) { //计算高斯系数，2.71828为自然数e pGaussCoef[ (i+SUPPORT_SIZE)*wlen + j+SUPPORT_SIZE ] = pow( 2.71828, (-double(i*i + j*j)/25) ); } } for(k = 0; k < wlen*wlen; ++k) { sum += pGaussCoef[k]; } for(k = 0; k < wlen*wlen; ++k) //进行归一化处理 { pGaussCoef[k] /= sum; } } } // 2维卷积函数，实现2维图像高斯滤波 // pGaussCoef为高斯系数 // pSrcImg为原始图像 // pDstImg为滤波后图像 // height：图像高度 // width：图像宽度 // supportSize：高斯滤波窗口半径，直径为2*supportSize + 1 void conv2D(double *pGaussCoef, unsigned char *pSrcImg, unsigned char *pDstImg, int height, int width, int supportSize) { int i, j; int m, n; int indexI, indexG; int sw = supportSize; int slen = sw*2 + 1; double sum; double *pTemp = NULL; pTemp = new double[height*width]; //图像面积 calGaussCoef(pGaussCoef); for(i = sw; i < height - sw; ++i) // sw=2 height=1080 width=1920 i=2;i<1078;i++ { for(j = sw; j < width - sw; ++j)// j=2;l<1918;j++ { sum = 0; for(m = -sw; m <= sw; ++m) // m=-2;m<2;m++ { for(n = -sw; n <= sw; ++n) { indexI = (i+m)*width + j+n; indexG = (m+sw)*slen/*直径*/ + n+sw; sum += pSrcImg[indexI] * pGaussCoef[indexG]; } } pDstImg[i*width + j] = (unsigned char)(sum); } } } int main() { int wlen, imLen; time_t start, end; double *pGaussCoef = NULL; unsigned char *pSrc = NULL, *pDst = NULL; unsigned char buffer[1078]; //定义BMP图像文件头部缓冲区1078 FILE *fin, *fout; if( !(fin=fopen("in.bmp","rb")) ) //打开原始输入图像 { printf("Open file %s error!\n","in.bmp"); exit(1); } if( !(fout=fopen("out.bmp","wb")) ) //创建滤波后输出图像 { printf("Open file %s error!\n","out.bmp"); exit(1); } wlen = SUPPORT_SIZE * 2 + 1; imLen = IM_WIDTH * IM_HEIGHT; pGaussCoef = new double[wlen*wlen]; pSrc = new unsigned char[IM_WIDTH*IM_HEIGHT]; pDst = new unsigned char[IM_WIDTH*IM_HEIGHT]; fread(buffer, 1, 1078, fin); //读取1078字节BMP图像文件头信息 fread(pSrc, sizeof(unsigned char), imLen, fin); //从输入文件读入图像数据 start = clock(); conv2D(pGaussCoef, pSrc, pDst, IM_HEIGHT, IM_WIDTH, SUPPORT_SIZE); //执行滤波 end = clock(); printf("running time is %d\n", end - start); fwrite(buffer, sizeof(unsigned char), 1078, fout); fwrite(pDst, sizeof(unsigned char), imLen, fout); //将滤波结果写到新文件 delete[] pGaussCoef; delete[] pSrc; delete[] pDst; fclose(fin); fclose(fout); }

Java基础知识面试题（2020最新版）

Intellij IDEA 实用插件安利

1. 前言从2020 年 JVM 生态报告解读 可以看出Intellij IDEA 目前已经稳坐 Java IDE 头把交椅。而且统计得出付费用户已经超过了八成（国外统计）。IDEA 的...

MySQL数据库面试题（2020最新版）

2020阿里全球数学大赛：3万名高手、4道题、2天2夜未交卷

HashMap底层实现原理，红黑树，B+树，B树的结构原理 Spring的AOP和IOC是什么？它们常见的使用场景有哪些？Spring事务，事务的属性，传播行为，数据库隔离级别 Spring和SpringMVC，MyBatis以及SpringBoot的注解分别有哪些？SpringMVC的工作原理，SpringBoot框架的优点，MyBatis框架的优点 SpringCould组件有哪些，他们...

《Oracle Java SE编程自学与面试指南》最佳学习路线图2020年最新版（进大厂必备）

​能让德国人放弃现金支付​，也没谁了

2020春招面试了10多家大厂，我把问烂了的数据库事务知识点总结了一下

2020年截止目前，我面试了阿里巴巴、腾讯、美团、拼多多、京东、快手等互联网大厂。我发现数据库事务在面试中出现的次数非常多。