rgb转灰度 RGB To Gray php Adobe RGB (1998) [gamma=2.20]
<?php
/**
* Date: 2016/10/24
* Time: 0:52
*/
// Gray = (R^2.2 * 0.2973 + G^2.2 * 0.6274 + B^2.2 * 0.0753)^(1/2.2)
$size = getimagesize('png.png');
$res = imagecreatefrompng('png.png');
for ($i = 0; $i < $size[1]; ++$i) {
for ($j = 0; $j < $size[0]; ++$j) {
$rgb = imagecolorat($res, $j, $i);
// var_dump($rgb);
$rgbarray = imagecolorsforindex($res, $rgb);
print_r($rgbarray);
$wr = $rgbarray['red'];
$wg = $rgbarray['green'];
$wb = $rgbarray['blue'];
$gray = ($wr ^ 2.2 * 0.2973 + $wg ^ 2.2 * 0.6274 + $wb ^ 2.2 * 0.0753) ^ (1 / 2.2);
echo $gray, '<br>'; //???
if ($rgbarray['red'] < 125 || $rgbarray['green'] < 125 ||
$rgbarray['blue'] < 125
) {
$data[$i][$j] = 1;
} else {
$data[$i][$j] = 0;
} }
}
rgb转灰度 RGB To Gray php Adobe RGB (1998) [gamma=2.20]的更多相关文章
- RGB转灰度图的几种算法
https://blog.csdn.net/cool1949/article/details/6649429 方法一: 对于彩色转灰度,有一个很著名的心理学公式: Gray = R*0.299 ...
- RGB转灰度的几种算法
这里我用的摄像头是OV2640,这款摄像头的像素是200万.通过对摄像头拍摄图像的进行图像的转化,先把图像的格式转化为RGB565,然后在进行灰度的转化,最后进行二值化处理,设定阈值,进行二值化的处理 ...
- 【转】关于色彩空间sRGB和Adobe RGB...
以前对这个问题一直很困惑.... 下面采用问答形式.A:相机中的SRGB和ADOBE RGB有什么区别 ADOBE貌似颜色淡.什么时候有用处呢? B:不是这样的,ADOBE RGB的色域要比SRGB要 ...
- 【CNN】--- 卷积过程中RGB与灰度的区别
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/hacker_Dem_br/article/ ...
- MATLAB图像uint8,uint16,double, rgb转灰度解释
1.uint8,uint16与double 为了节省存储空间,matlab为图像提供了特殊的数据类型uint8(8位无符号整数),以此方式存储的图像称作8位图像.matlab读入图像的数据是uint8 ...
- 图像处理基础---RGB图 灰度图 索引图 调色板
(1)二进制图 在二进制图中,像素的取值为两个离散数值0或1中的一个,0代表黑色,1代表白色 例 A=[0 0 1;1 1 0; 0 0 1];>> imshow(A,'InitialMa ...
- 常用颜色RGB、灰度值
128/0/0 深红 255/0/0 红 255/0/255 粉红 255/153/204 玫瑰红 153 ...
- 图像处理之常用颜色RGB、灰度值
128/0/0 深红 255/0/0 红 255/0/255 粉红 255/153/204 玫瑰红 153 ...
- RGB ECT 4BIT 压缩后质量远高于RGB ETC2 4BIT
今天突然发现这个.原来以为ETC2在任何方面都强于ETC,没想到...用了RGB ETC2 4BIT 压缩的贴图看起来有点糊,改用RGB ECT 4BIT后竟然非常清晰,而且大小与RGB ECT2 4 ...
随机推荐
- hdu 2639 第k大01背包
求每个状态里的k优解,然后合并 /* HDU 2639 求01背包的第k大解. 合并两个有序序列 */ #include<stdio.h> #include<iostream> ...
- 【现代程序设计】homework-09
1. 了解Lambda的用法 计算“Hello World!”中 a.字母‘e’的个数 b. 字母‘l’的个数 首先: ISO C++ 标准的另一大亮点是引入Lambda表达式.语法如下: [](形参 ...
- 网站构建学习笔记(0)——基本概念了解及资源学习(copy自w3school)
一.学习方面 1.WWW - 万维网 什么是 WWW? WWW 指万维网(World Wide Web) 万维网常被称为Web Web 是由遍布全球的计算机所组成的网络 所有 Web 中的计算机都可以 ...
- 如何清除sql server日志
1.打开查询分析器,输入命令 DUMP TRANSACTION 数据库名 WITH NO_LOG 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件-- ...
- BZOJ4311 : 向量
考虑离线操作,求出每个向量存在的时间区间,用时间线段树来进行分治,在每个节点求出凸壳后,询问时在凸壳上三分答案.时间复杂度$O(n\log^2n)$. #include<cstdio> # ...
- fireBug使用指南
据说,对于网页开发人员来说,Firebug是Firefox浏览器中最好的插件之一. 我最近就在学习怎么使用Firebug,网上找到一篇针对初学者的教程,感觉比较有用,就翻译了出来. ========= ...
- RN组件之ListView
/** * Created by DaGuo on 2016/4/7. */ 'use strict' import React,{ Component, View, Text, ListView, ...
- [转] - QPixmap全局变量载入多张图片失效问题
我想qt 中QPixmap这个类大家都很熟悉,它可以很简单的在标签上贴图:例如: QPixmap p; p.load("1.png"): label->setPixmap(p ...
- MySQL中的datetime与timestamp比较-------转载
原文地址http://database.51cto.com/art/200905/124240.htm MySQL中的datetime与timestamp比较 本文将通过实例比较MySQL中的date ...
- linux下IPTABLES配置
如果你的IPTABLES基础知识还不了解,建议先去看看. 开始配置 我们来配置一个filter表的防火墙. (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables - ...