本文系《数字图像处理原理与实践(MATLAB版)》一书之代码系列的Part1(P1~42)。代码运行结果请參见原书配图。

P20

I = imread('lena.jpg');
BW1 = im2bw(I);
BW2 = im2bw(I, 0.3);
BW3 = im2bw(I, 0.6);
figure
subplot(2,2,1),imshow(I);
title('original');
subplot(2,2,2),imshow(BW1);
title('\default');
subplot(2,2,3),imshow(BW2);
title('level = 0.3');
subplot(2,2,4),imshow(BW3);
title('level = 0.6')

P25-1

IMG1 = imread('airplane.jpg');
IMG2 = imread('baboon.jpg');
IMG3 = imread('lena.jpg');
imshow(IMG1)
imshow(IMG2)
imshow(IMG3)

P25-2

% figure
imshow(IMG1)
figure(5)
imshow(IMG2)

P26

figure;
subplot(1,2,1),subimage(IMG1);
title('airplane');
subplot(1,2,2),subimage(IMG2);
title('baboon');

P31

imhist(I)
imhist(I, n)
[counts, x]=imhist(...)

P32

i = imread('theatre.jpg');
g = rgb2gray(i);
figure
subplot(121), imhist(g);
subplot(122), imhist(g, 64);

P33

i = imread('baboon.jpg');
i = rgb2gray(i);
[m,n]=size(i);
[counts1, x]=imhist(i, 32);
subplot(121), stem(x, counts1);
counts2 = counts1/m/n;
subplot(122), stem(x, counts2);

P35

i=imread('theatre.jpg');
[x,y,z]=size(i);

figure
subplot(221), imshow(i);
title('original image')

%提取红色分量
r=i;
%r(:,:,1)=a(:,:,1);
r(:,:,2)=zeros(x,y);
r(:,:,3)=zeros(x,y);
r=uint8(r);
subplot(222),imshow(r);
title('R-component-image')

%提取绿色分量
g=i;
g(:,:,1)=zeros(x,y);
%g(:,:,2)=a(:,:,2);
g(:,:,3)=zeros(x,y);
g=uint8(g);
subplot(223),imshow(g);
title('G-component-image')

%提取蓝色分量
b=i;
b(:,:,1)=zeros(x,y);
b(:,:,2)=zeros(x,y);
%b(:,:,3)=a(:,:,3);
b=uint8(b);
subplot(224),imshow(b);
title('B-component-image')

P38

i=imread('theatre.jpg');
r=i(:,:,1);
g=i(:,:,2);
b=i(:,:,3);
subplot(1,3,1), imhist(r), title('R component');
subplot(1,3,2), imhist(g), title('G component');
subplot(1,3,3), imhist(b), title('B component');

P41

i = imread('theatre.jpg');
i = im2double(rgb2gray(i));
[m,n]=size(i);

%添加对照度
Fa = 1.25; Fb = 0;
O = Fa.*i + Fb/255;
figure(1), subplot(221), imshow(O);
title('Fa = 1.25, Fb = 0, contrast increasing');
figure(2),subplot(221), [H,x]=imhist(O, 64);
stem(x, (H/m/n), '.');
title('Fa = 1.25, Fb = 0, contrast increasing');

%减小对照度
Fa =0.5; Fb = 0;
O = Fa.*i + Fb/255;
figure(1), subplot(222),imshow(O);
title('Fa = 0.5, Fb = 0, contrast decreasing');
figure(2), subplot(222), [H,x] = imhist(O, 64);
stem(x, (H/m/n), '.');
title('Fa = 0.5, Fb = 0, contrast decreasing');

%线性亮度添加
Fa = 0.5; Fb = 50;
O = Fa.*i + Fb/255;
figure(1), subplot(223), imshow(O);
title('Fa = 0.5, Fb = 50, brightness control');
figure(2), subplot(223), [H,x]=imhist(O,64);
stem(x, (H/m/n), '.');
title('Fa = 0.5, Fb = 50, brightness control');

%反相显示
Fa = -1; Fb = 255;
O = Fa.*i + Fb/255;
figure(1), subplot(224), imshow(O);
title('Fa = -1, Fb = 255, reversal processing');
figure(2), subplot(224),[H,x]=imhist(O, 64);
stem(x, (H/m/n), '.');
title('Fa = -1, Fb = 255, reversal processing');

(代码公布未完,请待兴许...)


《数字图像处理原理与实践(MATLAB版)》一书之代码Part1的更多相关文章

  1. 《数字图像处理原理与实践(MATLAB版)》一书之代码Part6

    本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part6,辑录该书第281至第374页之代码,供有须要读者下载研究使用.代码运行结果请參见原书配图,建议下载代码前阅读下 ...

  2. 《数字图像处理原理与实践(MATLAB版)》一书之代码Part2

    本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part2(P43~80),代码运行结果请參见原书配图,建议下载代码前阅读下文: 关于<数字图像处理原理与实践(MA ...

  3. 《数字图像处理原理与实践(MATLAB版)》一书之代码Part5

    <数字图像处理原理与实践(MATLAB版)>一书之代码Part5 本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part5.辑录该书第225至第280页之代 ...

  4. 数字图像处理原理与实践(MATLAB版)勘误表

    本文系<数字图像处理原理与实践(MATLAB版)>一书的勘误表. [内容简单介绍]本书全面系统地介绍了数字图像处理技术的理论与方法,内容涉及几何变换.灰度变换.图像增强.图像切割.图像去噪 ...

  5. 《数字图像处理原理与实践(MATLAB文本)》书代码Part7

    这篇文章是<数字图像处理原理与实践(MATLAB文本)>一本书的代码系列Part7(由于调整先前宣布订单,请读者注意分页程序,而不仅仅是基于标题数的一系列文章),第一本书特色186经225 ...

  6. Reading | 《数字图像处理原理与实践(MATLAB版)》(未完待续)

    目录 一.前言 1.MATLAB or C++ 2.图像文件 文件头 调色板 像素数据 3.RGB颜色空间 原理 坐标表示 4.MATLAB中的图像文件 图像类型 image()函数 imshow() ...

  7. FPGA经典:Verilog传奇与基于FPGA的数字图像处理原理及应用

    一 简述 最近恶补基础知识,借了<<Verilog传奇>>,<基于FPGA的嵌入式图像处理系统设计>和<<基千FPGA的数字图像处理原理及应用>& ...

  8. MATLAB数字图像处理(一)基础操作和傅立叶变换

    数字图像处理是一门集计算机科学.光学.数学.物理学等多学科的综合科学.随着计算机科学的发展,数字图像处理技术取得了巨大的进展,呈现出强大的生命力,已经在多种领域取得了大量的应用,推动了社会的发展.其中 ...

  9. Win8MetroC#数字图像处理--2.2图像二值化函数

    原文:Win8MetroC#数字图像处理--2.2图像二值化函数 [函数代码] /// <summary> /// Binary process. /// </summary> ...

随机推荐

  1. dbMigration .NET 数据同步迁移工具

    官网:http://fishcodelib.com/DBMigration.htm

  2. Win10年度更新开发必备:VS2015 Update 1正式版下载汇总

    微软在12月1日发布了Visual Studio 2015 Update 1 .在MSDN中微软也提供下载,而且MSDN的Visual Studio 2015 Update 1与官方免费下载的文件是一 ...

  3. JavaScript进阶系列04,函数参数个数不确定情况下的解决方案

    本篇主要体验函数参数个数不确定情况下的一个解决方案.先来看一段使用函数作为参数进行计算的实例. var calculate = function(x, y, fn) { return fn(x, y) ...

  4. CE找基址

  5. SQLCE使用本地数据库优化

    一.数据绑定 1.使用数据虚拟化和SKIP/TAKE 使用 Skip 和 Take 方法可确保直到需要在 ListBox 控件中显示数据时才将数据库中的数据加载到内存中. 例如,以下代码显示了如何从数 ...

  6. Matlab Codes and Datasets for Feature Learning

    Matlab Codes and Datasets for Feature Learning 浙江大学CAiDeng提供的Matlab特征学习Code.

  7. ASP.NET MVC:some benefits of asp.net mvc

    Full control over HTML Full control over URLs Better separation of concerns Extensibility Testabilit ...

  8. 利用WebSocket传输数组或者Blob的方案

    最近在利用Html5的WebSocket进行即时通讯,一点小心得,大家一起讨论吧 首先把WebSocket的协议网址和WebSocket API网址给大家: 协议:http://tools.ietf. ...

  9. iTunes Connect开发者指南中的一个疑问

    iTunes Connect Developer Guide     避免app版本出现在iClound中,我的疑问是对已经上架的版本不能设置,那么这个功能的真正意义在哪里? 大部分用户去应用页面下载 ...

  10. idea jni

    javah -jni -classpath (搜寻类目录) -d (输出目录) (类名) nm -D  **.so idea setting $JDKPath$/bin/javah -jni -cla ...