日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

DIP第六章习题解答

發布時間:2025/4/16 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DIP第六章习题解答 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數字圖像處理 第六章課后作業

文檔地址:數字圖像處理第六章課后作業.pdf_數字圖像處理第六章課后答案-圖像處理文檔類資源-CSDN下載https://download.csdn.net/download/qq_44143405/12549547

第一題

6-7 在彩色 RGB 系統中,每幅 RGB 圖像均為12比特圖像,共有多少種不同的灰度?

第二題

6-24 怎樣才能實現與3.3.2節中匹配(規定)的灰度直方圖等效的彩色直方圖?

附錄含 matlab 實行步驟(含程序)

第三題

6-25 考慮下列 500×500 的 RGB 彩色圖像,圖像中方框是完全飽和的紅色、綠色和藍色,且每種顏色處在最大亮度[例如,對于紅色方框是(1,0,0)]。由該圖生成了一幅 HSI 圖像。

(a)描述每幅 HSI 分量圖像的外觀。

(b)用一個 250×250 的平均模板來平滑 HSI 圖像的飽和度分量。描述結果的外觀(在中,您可通過濾波操作忽略圖像的邊界效應)。

(c)對色調圖像重復(b)

附錄含 matlab 實行步驟(含程序)

第二題代碼塊

程序:

Image1=im2double(imread('lotus.bmp'));hsi = rgb2hsi(Image1); ????????????????%將RGB圖像轉化為HSI空間h = hsi(:,:,1);s = hsi(:,:,2);i = hsi(:,:,3);NewImage2=histeq(i);figure,subplot(121),imhist(hsi);title('原圖像直方圖');subplot(122),imhist(NewImage2);title('直方圖均衡化');hsi1 = cat(3,h,s,i);rgb1 = hsi2rgb(hsi1);hsi2 = cat(3,h,s,NewImage2);rgb2 = hsi2rgb(hsi2);figure,subplot(121),imshow(rgb1),title('原圖像');subplot(122),imshow(rgb2),title('均衡化后圖像');

第三題代碼塊

程序:

clear all?;clc;%生成紅綠藍格子rgb_G = zeros(500,500);rgb_G(1:250,1:250) = 1;rgb_G(251:500,251:500) = 1;rgb_R = zeros(500,500);rgb_R(1:250,251:500) = 1;rgb_B = zeros(500,500);rgb_B(251:500,1:250) = 1;rgb = cat(3,rgb_R,rgb_G,rgb_B);hsi = rgb2hsi(rgb); ??????????????????%將RGB圖像轉化為HSI空間h = hsi(:,:,1);s = hsi(:,:,2);i = hsi(:,:,3);K = fspecial('average',[250 250]); ???%250*250的平均模板H = imfilter(h,K,'replicate'); ???????%模糊H分量hsi1 = cat(3,H,s,i);rgb1 = hsi2rgb(hsi1);S = imfilter(s,K,'replicate'); ???????%模糊S分量hsi2 = cat(3,h,S,i);rgb2 = hsi2rgb(hsi2);%顯示圖像figure, imshow(rgb), ???title('RGB彩色圖像');figure; imshow(rgb1,[]),title('H模糊后的圖像');figure; imshow(rgb2,[]),title('S模糊后的圖像');

由于matlab?2018b?中沒有自帶rgb2hsi、hsi2rgb函數,下面附帶了這兩個函數的源程序。

rgb2hsi函數

function?hsi = rgb2hsi(rgb)% hsi = rgb2hsi(rgb)把一幅RGB圖像轉換為HSI圖像,% 輸入圖像是一個彩色像素的M×N×3的數組,% 其中每一個彩色像素都在特定空間位置的彩色圖像中對應紅、綠、藍三個分量。% 假如所有的RGB分量是均衡的,那么HSI轉換就是未定義的。% 輸入圖像可能是double(取值范圍是[0, 1]),uint8或 uint16。% 輸出HSI圖像是double,% 其中hsi(:, :, 1)是色度分量,它的范圍是除以2*pi后的[0, 1];% hsi(:, :, 2)是飽和度分量,范圍是[0, 1];% hsi(:, :, 3)是亮度分量,范圍是[0, 1]。% 抽取圖像分量rgb = im2double(rgb);r = rgb(:, :, 1);g = rgb(:, :, 2);b = rgb(:, :, 3);% 執行轉換方程% 實現H分量num = 0.5*((r - g) + (r - b));den = sqrt((r - g).^2 + (r - b).*(g - b));% 防止除數為0theta = acos(num./(den + eps));H = theta;H(b > g) = 2*pi - H(b > g);H = H/(2*pi);% 實現S分量num = min(min(r, g), b);den = r + g + b;% 防止除數為0den(den == 0) = eps;S = 1 - 3.* num./den;H(S == 0) = 0;%實現I分量I = (r + g + b)/3;% 將3個分量聯合成為一個HSI圖像hsi = cat(3, H, S, I);%hsi = H; ???%分別返回3個分量%hsi = S;%hsi = I;

hsi2rgb函數

function?rgb=hsi2rgb(hsi)%rgb=hsi2rgb(hsi)把一幅HSI圖像轉換為RGB圖像%其中HSI是double型%hsi(:,:,1)是色度分量,它的范圍是除以2*pi后在[0,1]內%hsi(:,:,2)是飽和度分量,它的范圍是在[0,1]內%hsi(:,:,3)是亮度分量,它的范圍是在[0,1]內%輸出圖像的分量是%rgb(:,:,1)為紅%rgb(:,:,2)為綠%rgb(:,:,3)為藍%提取HSI的各個分量hsi=im2double(hsi);%把hsi轉化為雙精度浮點類型H=hsi(:,:,1)*2*pi;S=hsi(:,:,2);I=hsi(:,:,3);%執行變換方程R=zeros(size(hsi,1),size(hsi,2));G=zeros(size(hsi,1),size(hsi,2));B=zeros(size(hsi,1),size(hsi,2));%RG區(0<=H<2*pi/3)idx=find((0<=H) & (H<2*pi/3));%尋找0<=H<2*pi/3B(idx)=I(idx).*(1-S(idx));R(idx)=I(idx).*(1+S(idx).*cos(H(idx))./cos(pi/3-H(idx)));G(idx)=3*I(idx)-(R(idx)+B(idx));%BG區(2*pi/3<=H<4*pi/3)idx=find((2*pi/3<=H) & (H<4*pi/3));%尋找2*pi/3<=H<4*pi/3R(idx)=I(idx).*(1-S(idx));G(idx)=I(idx).*(1+S(idx).*cos(H(idx)-2*pi/3)./cos(pi-H(idx)));B(idx)=3*I(idx)-(R(idx)+G(idx));%BR區(4*pi/3<=H<=2*pi)idx=find((4*pi/3<=H) & (H<=2*pi));%尋找4*pi/3<=H<=2*piG(idx)=I(idx).*(1-S(idx));B(idx)=I(idx).*(1+S(idx).*cos(H(idx)-4*pi/3)./cos(5*pi/3-H(idx)));R(idx)=3*I(idx)-(G(idx)+B(idx));%將3個分量聯合成為一個RGB圖像rgb=cat(3,R,G,B);rgb=max(min(rgb,1),0);

總結

以上是生活随笔為你收集整理的DIP第六章习题解答的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。