• 大小: 221KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: 其他
  • 标签: OpenCV  中值滤波  

资源简介

OpenCV中值滤波的源代码,启用SSE2指令,速度非常快。

资源截图

代码片段和文件信息


#include “FileIO.h“
#include 
using namespace std;

// Read/Write txt 文件的文件头大小(字节)
#define HEADER_SIZE 1024

// 将BYTE图像数据以二进制形式写入文件nChannel表示一个像素占用几个字节
BOOL WriteTxt(const char* fileName BYTE* pSrc int nRowlen int nHeight int nChannel)
{
ofstream fout;
fout.open(fileName ofstream::binary);

if (fout.is_open())
{
try
{
// 写文件头(大小HEADER_SIZE)
const char* pHead = “yuanyuanxiang“;
int nLen = strlen(pHead);
fout.write(pHead nLen);
int nInt = sizeof(int);
fout.write((char*)&nRowlen nInt);
fout.write((char*)&nHeight nInt);
fout.write((char*)&nChannel nInt);
fout.seekp(HEADER_SIZE);
// 写图像数据
fout.write((char*)pSrc nHeight * nRowlen);
fout.close();
return TRUE;
}
catch (...)
{
fout.close();
return FALSE;
}
}
return FALSE;
}


// 将BYTE图像数据以二进制形式读入文件,nChannel表示一个像素占用几个字节
BYTE* ReadTxt(const char* fileName int &nWidth int &nHeight int &nRowlen int &nChannel)
{
ifstream fin;
fin.open(fileName ifstream::binary);
nWidth = 0;

if (fin.is_open())
{
BYTE *pSrc = NULL;
try
{
// 获取文件大小
streampos pos = fin.tellg();
fin.seekg(0 ios::end);
long nFileSize = (long)fin.tellg();
fin.seekg(pos);
if (nFileSize <= HEADER_SIZE)
{
fin.close();
return NULL;
}
// 读取文件头
const char* check = “yuanyuanxiang“;
int nLen = strlen(check);
char* pHead = new char[nLen];
fin.read(pHead nLen);
for (int i = 0; i < nLen; ++i)
{
if (pHead[i] != check[i])
{
SAFE_DELETE(pHead);
return FALSE;
}
}
SAFE_DELETE(pHead);
int nInt = sizeof(int);
fin.read((char*)&nRowlen nInt);
fin.read((char*)&nHeight nInt);
fin.read((char*)&nChannel nInt);
if (nRowlen * nHeight + HEADER_SIZE <= nFileSize)
{
pSrc = new BYTE[nRowlen * nHeight];
fin.seekg(HEADER_SIZE);
fin.read((char*)pSrc nRowlen * nHeight);
fin.close();
nWidth = nRowlen / nChannel;
return pSrc;
}
}
catch (...)
{
fin.close();
return NULL;
}
}
return NULL;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-10-09 20:43  MedianBlur\
     文件         897  2016-10-09 13:23  MedianBlur.sln
     文件        2217  2016-10-09 13:30  MedianBlur\FileIO.cpp
     文件         544  2016-10-09 13:30  MedianBlur\FileIO.h
     文件      284224  2016-10-08 23:04  MedianBlur\ImageROI.txt
     文件        1135  2016-10-09 20:25  MedianBlur\main.cpp
     文件       14069  2016-10-09 20:42  MedianBlur\medianBlur.h
     文件        4590  2016-10-09 20:22  MedianBlur\MedianBlur.vcxproj
     文件        1331  2016-10-09 20:21  MedianBlur\MedianBlur.vcxproj.filters
     文件         216  2016-10-09 20:18  MedianBlur\stdafx.h

评论

共有 条评论