
matlab练习程序(RGB2HSV、HSV2RGB)
发布日期:2025-04-12 09:52:24
浏览次数:11
分类:精选文章
本文共 1603 字,大约阅读时间需要 5 分钟。
色相、饱和度、明度的相互转换
在图像处理领域,色相、饱和度和明度是三个重要的颜色特性参数,它们之间具有密切的关联关系。通过对这些参数的转换和计算,我们可以更好地理解图像的颜色特性。
以下是基于MATLAB的代码解释:
清除所有图形窗口并重置颜色缓冲区:
clear all;close all;clc;img = imread('lena_color.jpg'); % 读取图像img = mat2gray(img); % 将图像转换为灰度图像
获取图像的RGB值:
[m n dim] = size(img); % 获取图像的大小imshow(img); % 显示图像R = img(:,:,1); % 获取红色通道G = img(:,:,2); % 获取绿色通道B = img(:,:,3); % 获取蓝色通道
色相转换:
H = zeros(m, n); % 初始化色相矩阵S = zeros(m, n); % 初始化饱和度矩阵V = zeros(m, n); % 初始化明度矩阵for i = 1:m for j = 1:n r = R(i, j); g = G(i, j); b = B(i, j); MAX = max([r, g, b]); % 获取颜色通道的最大值 MIN = min([r, g, b]); % 获取颜色通道的最小值 if MAX == MIN H(i, j) = 0; % 当颜色单调时,色相为0 elseif MAX == r && g > b H(i, j) = 60 * (g - b) / (MAX - MIN); % 计算色相角 elseif MAX == r && g < b H(i, j) = 60 * (b - g) / (MAX - MIN); % 计算色相角 elseif MAX == g if b > r H(i, j) = 60 * (b - r) / (MAX - MIN); % 计算色相角 else H(i, j) = 60 * (r - b) / (MAX - MIN); % 计算色相角 end elseif MAX == b if r > g H(i, j) = 60 * (r - g) / (MAX - MIN); % 计算色相角 else H(i, j) = 60 * (g - r) / (MAX - MIN); % 计算色相角 end end % 饱和度计算(该部分代码未在示例中完整展示) % V(i, j) = 1 - (MIN / MAX); % 饱和度计算公式示例 endend
饱和度计算:
% 以下为饱和度计算的示例代码片段V(i, j) = 1 - (MIN / MAX); % 饱和度计算公式
色相、饱和度和明度之间的关系:
- 色相(H)反映了颜色的颜色特性。
- 饱和度(S)描述了颜色纯度,饱和度越高,颜色越纯。
- 明度(V)表示颜色亮度,明度越高,颜色越亮。
通过上述代码,我们可以清晰地看到色相、饱和度和明度之间的计算关系。这三者共同描述了图像的颜色特性,是图像处理和计算中的重要参数。
发表评论
最新留言
很好
[***.229.124.182]2025年05月24日 06时35分21秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Making the Grade [POJ3666] [DP]
2025-04-11
malloc和定位new表达式
2025-04-11
Malor Mass(分子量)
2025-04-11
MAMP无法正常启动,错误提示The built-in Apache is active
2025-04-11
mamp环境下navicat无法链接本地mysql
2025-04-11
Managing CentOS/RHEL kernel modules.
2025-04-11
Mangoa-Auth/芒果自助多应用企业级授权系统拥有盗版入库、远程更新等功能
2025-04-11
MangoDB4.0版本的安装与配置
2025-04-11
Manjaro 24.2 “Yonada” 发布:尖端功能与精美界面再度进化
2025-04-11
Manjaro Linux 推出新不可变版本:扩展产品范围,开放社区反馈和测试
2025-04-11
map 函数返回的列表在使用一次后消失
2025-04-11
Map 遍历取值及jstl的取值
2025-04-11
Map.Entry学习和详解
2025-04-11
Mapbox GL示例教程【目录】-- 已有80篇
2025-04-11
Mapbox TOKML:将GeoJSON转换为KML的开源工具
2025-04-11
MapboxGL 入门系列教程(一):应该如何学习 MapboxGL
2025-04-11
mapper.xml中mapper找不到问题
2025-04-11