博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在利用matlab处理图像时务必慎用abs函数
阅读量:4105 次
发布时间:2019-05-25

本文共 603 字,大约阅读时间需要 2 分钟。

               

       先看下面程序:

clearclccd('C:\Documents and Settings\Administrator\桌面');I = imread('pig.jpg');B = I(:, :, 3);a = 200b = 220c = B(100, 100)d1 = abs(a - c)d2 = abs(c - b)

      结果为:

a =

   200

b =

   220

c =

  208

d1 =

    0

d2 =

    0

 

       为什么d1, d2都为0呢? 因为c是uint8类型的,所以一定要注意这一点,在matlab中用whos命令查阅一下c, 便有:

  Name      Size            Bytes  Class    Attributes

  c         1x1                 1  uint8       

 

        所以,上面的程序应该改为:

clearclccd('C:\Documents and Settings\Administrator\桌面');I = imread('pig.jpg');B = I(:, :, 3);a = 200b = 220c = B(100, 100)d1 = abs(a - double(c))d2 = abs(double(c) - b)

     结果为:

a =

   200

b =

   220

c =

  208

d1 =

     8

d2 =

    12

 

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!

转载地址:http://nicsi.baihongyu.com/

你可能感兴趣的文章