`
hitqiang
  • 浏览: 36148 次
  • 性别: Icon_minigender_1
  • 来自: shangdpng
最近访客 更多访客>>
社区版块
存档分类
最新评论

位图算法-找中值

阅读更多
//
// Sample for vector arithmetic
// Write by spark

//

#include <stdio.h>

int arr[] = {1,3,5,7,9,2,4,6,8};           

#define MAX_NUM             (9)             //arr[]中的最大数
#define MIN_NUM             (1)             //arr[]中的最小数
                                                  //为了构建位图使用

#define ARR_MAX_INDEX       (sizeof(arr)/sizeof(arr[0]))   //arr[]中元素个数
#define VEC_MAX_INDEX       ((MAX_NUM)+1)                  //创建0~MAX_NUM的位图,这里可以优化,改为创
                                                                   //建MIN_NUM~MAX_NUM的位图,以节省空间。


int main(int argc, char *argv[])
{
    int vector_flag[VEC_MAX_INDEX] = {0};      //这里很浪费空间。:)
                                               //对空间有限制的话可以把32个flag压缩到一个int里
    int i, j, k;
    int middle_index;

    // set flag
    for (i=0; i<ARR_MAX_INDEX; i++)
    {
        vector_flag[arr[i]] = 1;
    }
  
    // search middle
    middle_index = (ARR_MAX_INDEX+1) / 2;       //注:这里假设arr[]中没有重复的值,否则要改
                                                       //变middle_index的算法。
    i=MIN_NUM-1; j=0;
    while(j<middle_index && i<VEC_MAX_INDEX)
    {
        i++;
        if (vector_flag[i]==1)
        {
            j++;
        }
    }

    // print result
    printf("middle number is : %d", i);

    return 0;
}

分享到:
评论

相关推荐

    24位图处理_中值滤波源码

    本压缩包文件"24位图处理_中值滤波源码"提供了在VC++环境下进行24位BMP图像的中值滤波处理的源代码,这对于学习和实践图像处理技术,尤其是噪声去除和图像平滑的人来说非常有价值。在VC++中,可以使用MFC或WinAPI等...

    数字图像中值滤波算法(vc++)

    在图像处理领域,中值滤波算法是一种广泛应用的降噪技术,尤其对于去除椒盐噪声效果显著。本文将深入探讨中值滤波的基本原理、实现过程以及如何在VC++环境中应用这一算法。 **中值滤波算法基本原理** 中值滤波是一...

    中值和均值滤波算法.docx

    具体到代码实现,中值滤波的`MedianFilter()`函数将对输入的DIB(设备无关位图)图像进行处理。它首先为新图像分配内存,并复制原始图像数据。然后,通过二维数组遍历像素点,对于每个像素点,它会读取一个由滤波器...

    易语言转换八位256色位图源码-易语言

    这个过程可能涉及到色彩量化算法,如最近邻插值或中值切割法,以减少颜色丢失的影响。 5. **保存新位图**:最后,程序将转换后的像素数据和调色板信息写入新的8位位图文件,保持位图的尺寸和结构不变。 在"转换为...

    c语言对bmp图像中值均值滤波

    总的来说,C语言实现.bmp图像的中值滤波和均值滤波涉及图像文件操作、数组处理、滤波算法和边界处理等多个方面,这需要扎实的编程基础和对图像处理原理的理解。通过编写这样的程序,不仅可以提升C语言编程能力,还能...

    图像分割、边缘提取等常用算法,sobel\canel算子,模糊、bmp图像的导入导出、中值滤波、坐标变换等算法

    关于压缩包中的文档,它们可能详细讨论了基于立体视觉的照相机阵列测量系统、照相机阵列的标定算法、视觉伺服在车辆尺寸测量中的应用、立体视觉算法、几何尺寸测量中的特征提取以及汽车前照灯性能检测的实现。...

    商业编程-源码-真彩位图转化成256彩色或黑白位图的代码.zip

    - **中值聚类法**:更高级的方法,通过算法找出最佳的256个颜色来代表原图像的色彩范围。 3. **位图处理算法**: - **遍历像素**:转换过程中,程序需要遍历图像中的每一个像素,对其进行相应的色彩转换操作。 -...

    位图的读取、显示和图像处理

    位图的读取、显示和图像处理是计算机图形学中的基础操作,广泛应用于图像编辑、分析和算法开发。本文将详细讲解位图的基本概念、如何读取和显示位图,以及进行简单的图像处理,包括离散余弦变换(DCT)和中值滤波。 ...

    图像中值滤波,读取bmp图像,输出bmp图像

    例如,可以定义一个二维数组来存储图像数据,通过中值滤波算法更新数组中的值,最后按照BMP格式要求写入文件。对于3x3的中值滤波器,可以遍历图像的每个像素,对周围9个像素进行排序并替换中心像素。 总结来说,...

    zhongzhilvbo.rar_中值滤波

    这意味着这个程序可能包含了一些关键的算法实现,如滑动窗口机制、快速中值排序算法等,这些都是实现高效中值滤波的关键。 从【压缩包子文件的文件名称列表】来看,我们可以看到一系列与VC++项目相关的文件: 1. ...

    基于C语言的图像去噪算法设计与实现

    - **中值滤波器**:对椒盐噪声有很好的去除效果,保留边缘较好。 - **高斯滤波器**:适用于消除高斯噪声,能保持边缘锐利。 - **快速傅里叶变换(FFT)**:在频域进行滤波,可实现多种滤波效果。 - **小波去噪**:...

    中值滤波程序

    接着,定义一个滤波窗口大小,例如3x3或5x5,然后遍历图像的每一个像素,对其邻域内的像素值进行排序,找出中值并替换原像素值。由于排序操作可能影响效率,实际编程时可以使用快速选择算法或其他高效的查找中值的...

    PP.rar_bmp中值滤波

    4. **中值排序**:在计算中值时,需要对邻域内的像素值进行排序,这通常涉及使用快速排序、堆排序或其他高效的排序算法。 5. **更新像素值**:将计算出的中值替换原像素点的值。 6. **保存结果**:最后,将处理后的...

    24位转单色位图模块.rar

    4. **边缘平滑**:为了消除因阈值转换产生的锯齿状边缘,可能会应用平滑算法,如平均滤波、中值滤波等。 5. **优化与压缩**:对于生成的单色位图,可以采用更高效的压缩算法,如RLE(Run-Length Encoding)或JPEG,...

    数字图像处理算法(C语言实现).

    - **中值滤波**:对噪声有更好的抑制效果,特别是椒盐噪声,取像素周围区域的中值。 - **高斯滤波**:平滑图像,基于像素周围像素的加权平均,权重由高斯函数决定。 6. 边缘检测: - **Sobel算子**:用于检测...

    位图的平滑、高斯模糊的源码

    常见的平滑算法有均值滤波和中值滤波。源码`smooth.c`可能包含这类算法的实现,通过遍历图像的每个像素,计算其邻域内像素的平均值,然后用这个平均值替换当前像素的值。 3. **高斯模糊**: 高斯模糊是一种更高级...

    Visual C++数字图像处理典型算法及实现(第2版源代码)].张宏林

    - 图像基础知识:图像的类型(位图、灰度图、索引彩色图、真彩色图等)、像素的概念、图像的分辨率和色彩模型(RGB、CMYK、灰度)。 - 图像的基本操作:包括图像的读取、显示、保存、裁剪、旋转、缩放、平移等。 ...

    bmp.rar_BMP二值图_bmp中值滤波_bmp细化_中值滤波_二值化

    首先,BMP(Bitmap)是一种常见的位图文件格式,广泛用于Windows操作系统和一些其他平台。它以未经压缩的形式存储图像数据,使得图像质量高但文件大小较大。在处理BMP图像时,我们需要理解其基本结构,包括图像宽度...

    朱虹老师图像处理基本算法讲座

    - 中值滤波:特别适用于去除椒盐噪声,保留边缘信息。 5. **图像分割**: - 基于阈值的分割:通过设定一个或多个阈值将图像分为前景和背景。 - 区域生长:从种子点开始,根据特定条件扩展到相邻像素。 - 边缘...

    C#图像处理经典算法

    图像平滑算法如高斯滤波、中值滤波,用于去除噪声;还有色彩转换算法,如从RGB转换到灰度图像,或者使用HSL、HSV色彩空间进行颜色调整。 在"C#数字图像处理"中,我们可能需要实现这些算法的C#版本。例如,Canny边缘...

Global site tag (gtag.js) - Google Analytics