像素

PHP获取图片每个像素点

孤者浪人 提交于 2019-12-04 10:55:42
PHP获取图片每个像素点 <pre> $i = imagecreatefromjpeg("test.jpg"); //图片路径 for ($x = 0; $x < imagesx($i); $x++) { for ($y = 0; $y < imagesy($i); $y++) { $rgb = imagecolorat($i, $x, $y); $r = ($rgb >> 16) & 0xFF; $g = ($rgb >> 8) & 0xFF; $b = $rgb & 0xFF; echo "($r,$g,$b)"; //echo "$rgb "; } echo "\n"; } </pre> 来源: https://www.cnblogs.com/newmiracle/p/11856355.html

三维图形渲染中常见的贴图

ぃ、小莉子 提交于 2019-12-04 02:36:47
在三维图形渲染中,贴图与shader组合成材质,用来告诉gpu如何进行绘制,决定了三维模型表面最终呈现出来的颜色 贴图(Map)是美术在ps等软件中制作产生的一张图片,有很多格式如:dds、bmp、png、jpg等。 Diffuse Map(漫反射贴图,也称为颜色贴图;Base Color;Albedo Map -- 反照率贴图):用于表现物体被光照射到而显出的颜色和强度 Bump Map(凹凸贴图):给模型增加立体感。它并不能改变模型的形状,而是通过影响模型表面的影子来达到凸凹效果的。游戏中有两种不同类型的凸凹贴图:法线贴图(normalmap)和高度贴图(highmap)。 Normal Map(法线贴图):定义了一个表面的倾斜度或者法线。换一种说法,他们改变了我们所看到的表面的倾斜度 有两种制作法线贴图的方法: ① 从三维的模型渲染出一张法线贴图 (用高模跟低模重叠在一起,把高模上的细节烘焙到低模的UV上,这里需要低模有一个不能重叠的UV) ② 在ps中转换一张高度贴图成为一个法线贴图。(使用 NVIDIA Texture Tools ps插件) Height Map(高度贴图):一种黑白的图像,它通过像素来定义模型表面的高度。像素越白的地方越高,越黑的地方越低,灰色的在中间,从而表现不同的地形。 Specular Map(镜面光贴图,也称高光贴图)或Reflective

Vue类似点餐软件开发(四:布局)

匆匆过客 提交于 2019-12-04 02:27:31
手机端和pc端像素有一倍差距:PC=2手机端像素: 具体实现手机端与pc像素相同,要用到缩放: mixin.styl是一个css中的方法,可以传一个变量【 border-1px(rgba(7, 17, 27, 0.1)】 通过after未类绝对定位:加上缩放实现具体的像素转换。 通用的1像素编写: 实现pc与手机的像素缩放: 根据设备的最小dpr:将y轴做一个缩放 全局引用 来源: CSDN 作者: 我有多的棒棒糖 链接: https://blog.csdn.net/qq_40197100/article/details/79281176

Android px、dp、sp之间相互转换

情到浓时终转凉″ 提交于 2019-12-04 01:18:48
dp(dip) : device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 dp也就是dip,这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或sp。但如果设置字体,需要使用sp。dp是与密度无关,sp除了与密度无关外,还与scale无关。如果屏幕密度为160,这时dp和sp和px是一 样的。1dp=1sp=1px,但如果使用px作单位,如果屏幕大小不变(假设还是3.2寸),而屏幕密度变成了320。那么原来TextView的宽度 设成160px,在密度为320的3.2寸屏幕里看要比在密度为160的3.2寸屏幕上看短了一半。但如果设置成160dp或160sp的话。系统会自动 将width属性值设置成320px的。也就是160 * 320 / 160。其中320 / 160可称为密度比例因子。也就是说,如果使用dp和sp,系统会根据屏幕密度的变化自动进行转换。 px: pixels(像素) . 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。 pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用; sp: scaled pixels(放大像素) . 主要用于字体显示best

pc端适配移动端

让人想犯罪 __ 提交于 2019-12-03 23:40:58
pc端和移动端共用一套代码 1. 允许网页宽度自动调整 在网页代码的头部,加入一行viewport元标签 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> 所有主流浏览器都支持这个设置,包括IE9。对于那些老式浏览器(主要是IE6、7、8),需要使用 css3-mediaqueries.js 2. 不使用绝对宽度 由于网页会根据屏幕宽度调整布局,所以不能使用绝对宽度的布局,也不能使用具有绝对宽度的元素。这一条非常重要,可以用 width:~% 或者 width:auto; 3. 相对大小的字体 字体也不能使用绝对大小(px),而只能使用相对大小(em) body { font:normal100%Helvetica,Arial,sans-serif; } 上面的代码指定,字体大小是页面默认大小的100%,即16像素 h1{ font-size:1.5em; } 然后,h1的大小是默认大小的1.5倍,即24像素(24/16=1.5) small{ font-size:0.875em; } small元素的大小是默认大小的0.875倍,即14像素(14/16=0.875) 4. 流动布局 fluidgrid “流动布局”的含义是

灰度图片均衡化源码

你离开我真会死。 提交于 2019-12-03 13:37:56
#灰度图片均衡化 img = cv2.imread('yqk.jpg',0) img_info = img.shape height = img_info[0] width = img_info[1] count_g = np.zeros(256,np.float) #每个像素出现的次数 for i in range(0,height): for j in range(0,width): g = img[i,j] index_g = int(g) count_g[index_g] = count_g[index_g] + 1 #每个像素的概率 for i in range(0,255): count_g[i] = count_g[i] / (height * width) sum1 = float(0) #计算累加概率 for i in range(0,255): sum1+=count_g[i] count_g[i] = sum1 print(count_g) #计算一个映射表 map1 = np.zeros(256,np.uint16) for i in range(0,256): map1[i] = np.uint16(count_g[i]*255) #将像素根据映射表映射一个新的图像 for i in range(0,height): for j in range(0

浅谈响应式Web设计与实现思路

社会主义新天地 提交于 2019-12-03 13:08:37
是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理论基础,包括:屏幕尺寸,物理,设备独立,CSS像素,dpr,视口等相关概念,还有响应式设计基础,常见设计模式,及响应式UI实现基本思路,希望能加深对响应式的理解和实践思路。 欢迎访问我的个人博客 响应式(Responsive) 响应式是什么呢?顾名思义,响应式,肯定会自动响应,响应什么?应用程序是在终端屏幕窗口中展示给用户,被用户访问的,那么就是响应屏幕的变化,不同终端屏幕尺寸大小不一致,需要针对不同尺寸屏幕进行不同的展示响应。 响应式(Responsive web design, RWD) ,是指一套应用程序用户界面(User Interface)能自动响应不同设备窗口或屏幕尺寸(screen size)并且内容,布局渲染表现良好。 自适应(Adaptive) 在响应式设计(RWD)之外,还有一种适配多设备屏幕的方式, 自适应设计(Adaptive web design, AWD) 。 自适应设计(AWD),是指一个应用程序使用多版本用户界面,针对不同设备屏幕,服务器端返回不同版本用户界面,供用户访问。 自适应vs响应式 自适应和响应式设计的不同主要概括如下: 自适应是多套用户界面

h.264 去块滤波

拥有回忆 提交于 2019-12-03 12:15:46
本文转自: h.264 去块滤波 原作者: https://www.cnblogs.com/TaigaCon h.264 去块滤波 块效应及其产生原因 我们在观看视频的时候,在运动剧烈的场景常能观察到图像出现小方块,小方块在边界处呈现不连续的效果(如下图),这种现象被称为块效应(blocking artifact)。 首先我们需要搞清楚块效应产生的原因。h.264在编码过程中对像素残差进行了DCT变换,变换后得到的DCT系数是与每个像素都相关的,这些系数代表了被变换数据的基础色调与细节。h.264在DCT变换后对DCT系数进行了量化,量化能有效去除相邻像素间的空间冗余,也就是说会抹去元素数据的部分细节。比较理想的情况是量化抹去人眼无法识别的细节部分,但是在低码率的情况下就会导致原始数据的细节丢失过多。而且,DCT变换时基于块的,即将8x8或者4x4的像素残差进行变换后得到8x8或者4x4DCT系数,此时如果进行了低码率的量化,就会使得相邻两个块的相关性变差,从而出现块效应。 h.264的运动补偿加剧了由变换量化导致的块效应。由于运动补偿块的匹配不可能绝对准确,各个块的残差大小程度存在差异,尤其是当相邻两个块所用参考帧不同、运动矢量或参考块的差距过大时,块边界上产生的数据不连续就更加明显。 块效应主要有两种形式:一种是由于DCT高频系数被量化为0,使得强边缘在跨边界处出现锯齿状

响应式布局之 px、em、 rem

心不动则不痛 提交于 2019-12-03 12:08:16
一、写在前面的话   作为一面前端开发者,对 px 、em 、 rem 应该是再熟悉不过了,但大多数小伙伴应该都和我一样仅仅停留在了解的层面,并不是实质性的掌握它们。本文对三者进行了详细的总结和详细说明,不熟悉的各位小伙伴阅读本文一定会有所收获,如果你对这三者已经了解的非常透彻,那本文可能对你的帮助不大。 二、简述   px、em、rem都是计量单位,都能表示尺寸,但是有有所不同,而且其各有各的优缺点。 三、PX (pixel)   Px 表示“绝对尺寸”(并非真正的绝对),实际上就是css中定义的像素(此像素与设备的物理像素有一定的区别),利用px设置字体大小及元素宽高等比较稳定和精确。Px的缺点是其不能适应浏览器缩放时产生的变化,因此一般不用于响应式网站。 注: 1、像素 1024x768 的,表示的是水平方向是 1024 个像素点,垂直方向是 768个 像素点。   2、以上所述 px 为 css 中定义的像素(以下简称 css 像素),与实际的物理像素是有区别的,早期电脑屏幕的物理像素与 css 像素相同,但是随着科技的发展,高精度屏幕开始出现在人们的视野中。以 iPhone 的 Retina  屏为例,其物理像素与 css 像素关系见下图。   为此移动端浏览器以及某些桌面浏览器引入了 devicePixelRatio(DPR 设备像素比)属性,其官方的定义为