数字图像处理的数学变换逻辑运算

Posted nanke_yh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数字图像处理的数学变换逻辑运算相关的知识,希望对你有一定的参考价值。

逻辑运算

1求反运算

2与运算

3或运算

4异或运算

5实验结果


        逻辑运算又称布尔运算,逻辑常量只有两个,即0和1,用来表示两个对立的逻辑状态“假”和“真”。逻辑变量与普通代数变量一样,可以用字母、符号、数字及其组合来表示,当进行逻辑运算时逻辑变量需先通过某种规则转换为逻辑常量。逻辑运算最直接的应用于处理二值图像的,对于非二值图像往往有自己具体的应用场景以及结合阈值化等其他运算来确定像素点真假,所以数字图像处理的算法往往都不是独立的,基本都是相结合的作为图像处理策略以获得最佳图像结果。

逻辑运算主要分为求反运算、与运算、或运算和异或运算。“非”是一个一元操作符,它只对一幅图像操作。剩下的是二元操作符,操作两幅图像。

1求反运算

        求反运算又称为非运算,数字表达式为:

 

         其中,f(x,y)为输入图像,g(x,y)为输出图像;

        求反运算主要应用于:获得一个图像的负像、获得一个子图像的补图像、绘制区别于背景的,可恢复的图像。

        在线性点运算中黑白翻转即为求反运算:h(x,y)=DN-f(x,y),其中DN为f(x,y)图像的灰度级。

2与运算

        与运算的数字公式为:

 

         其中,f1(x,y)和f2(x,y)为两幅不同的输入图像,g(x,y)为输出图像;主要用于求两幅图像相交子图。

3或运算

        或运算的数字公式为:

 

         其中,f1(x,y)和f2(x,y)为两幅不同的输入图像,g(x,y)为输出图像;主要用于求两幅图像并集图像。

4异或运算

        异或运算的数字公式为:

 

         其中,f1(x,y)和f2(x,y)为两幅不同的输入图像,g(x,y)为输出图像;

5实验结果

//对图像进行逻辑运算(非)处理ColorLen=256

int t = srcImg[row * width + col];

if (!t)//not

        temp = ColorLen-1;

else

        temp = 0;

srcImg[row * width + col] = (ImgTyp)(temp);

//对图像进行逻辑运算(与、或、异或)处理ColorLen=256

int temp = 0;

bool L = LeftImg[i*width+j];

bool R = RightImg[i*width+j];

switch(flag)

case 0: //与

        if (L && R)

        

                temp = ColorLen-1;

        

        else

        

                temp = 0;

        

        break;

case 1:  //或

        if (L || R)

        

                temp = ColorLen-1;

        

        else

        

                temp = 0;

        

        break;

case 2:  //异或

        if (L != R)

        

                temp = ColorLen-1;

        

        else

        

                temp = 0;

        

        break;

default:

     cout<<"flag doesn't exist."<<endl;

     break;

resultImg[i*width+j] = temp;

flag

输入图像

输出图像

求反

0

  

1

2

         基础的原理和操作实现和整理了一下,如果文中有什么错误,希望大家在评论中指出来,谢谢!

以上是关于数字图像处理的数学变换逻辑运算的主要内容,如果未能解决你的问题,请参考以下文章

数字图像处理的数学变化 线性点运算分段线性点运算非线性点运算阈值化运算

数字图像处理基本运算

Bitwise Operation 位操作(逻辑运算)

(急)c#中的换列符号是啥

paper 76:膨胀腐蚀开闭运算——数字图像处理中的形态学

数字图像处理