4-14 图像特效小结

灰度图片和彩色图片,它们的颜色维度是不一样的。彩色图片每一个颜色是三维的,分别是RGB三种颜色来组成。

通过opencv API的方法来把彩色图片转化为灰度图片。

灰度图片实现的算法原理:通过RGB取均值的方式将彩色图片转化为灰度图片。还介绍了一个比较著名的心理学公式:gray = r*0.299+g*0.587+b*0.114

除了介绍API的使用以及彩色图片灰度化的算法原理之外,我们还给大家着重强调了算法的优化。对于图像处理来说,算法优化是非常重要的。比如说浮点转定点,以及加减乘除运算尽可能地转化成移位运算。

实际上算法的优化是有很多工作要做的。介绍了当前这样一个心理学公式进行优化的结果。比如说当前的这个公式我们乘以一个共同的值,比如说乘以一个4,我们把当前的浮点运算转化成定点运算,同时我们把乘法运算又转化成了移位运算。除法运算也可以转化成移位运算。经过转化之后整个代码的运算量就会大大的下降。

我们在学习知识的时候不光要学习API是如何使用的,我们还要掌握原理。如何通过原理的形式,利用源代码来实现这个功能。第三个方面,在掌握原理的同时,看一下我们能不能自己来实现它。另外还有一些算法优化的工作也是比较重要的。

原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/9710560.html

时间: 2024-10-13 03:31:50

4-14 图像特效小结的相关文章

图像操作小结

花了两天时间弄图像. 今天做一个小结 关于图像操作. 小结 相关类.Drawable  就是一个可画的对象. 官方文档原话是:A Drawable is a general abstraction for "something that can be drawn."Canvas 画布. 官方文档如是说: 用这个类来画一些东西, 前提要有4个基本的部件    1. 一个bitmap用来确定像素. 可以看一下Canvas() 的构造函数, 有三个: Canvas(); Canvas(Bit

Android 中的图像特效(Matrix)

以前在线性代数中学习了矩阵,对矩阵的基本运算有一些了解,现在在Android中有一个Matrix类,它的中文意思就是矩阵.Matrix主要是用于图像的缩放.平移.旋转.扭曲等操作.图像处理,主要用到的是乘法. 下面是一个乘法的公式: 在Android里面,Matrix由9个float值构成,是一个3*3的矩阵.如下图 其含义如下: sinX和cosX,表示旋转角度的cos值和sin值(旋转角度是按顺时针方向计算的).translateX和translateY表示x和y的平移量.scale是缩放的

【转】四、android图像特效处理之底片效果

这篇将讲到图片特效处理的底片效果.跟前面一样是对像素点进行处理,算法是通用的. 算法原理:将当前像素点的RGB值分别与255之差后的值作为当前点的RGB值. 例: ABC 求B点的底片效果: B.r = 255 - B.r; B.g = 255 - B.g; B.b = 255 - B.b; 效果图: 原图: 代码: package com.color; import android.content.Context; import android.graphics.Bitmap; import

javascript特效源码(2、图像特效)

1.不停闪烁的图像 不停闪烁的图片[修改显示的图片及链接地址后根据说明进行共1步] 1.以下代码放在一个新建页面的HTML的<body></body> 区即可:[页面上必须什么都没有] <HTML> <HEAD> <TITLE>Blink image</TITLE> </HEAD> <BODY ONLOAD="soccerOnload()" topmargin="0">

计算机视觉之图像特效(实现浮雕效果等功能)(待更新。。。)

1.浮雕效果 浮雕效果:newP = gray0-gray1+150(特定值) 即当前像素等于相邻像素之差再加上一个特定值突出灰度 即边缘特征,设定不同的特征值的时候会出现不同的浮雕效果.测试代码如下: 1 import cv2 2 import numpy as np 3 import random 4 img = cv2.imread('image0.jpg', 1) 5 imgInfo = img.shape 6 height = imgInfo[0] 7 width = imgInfo[

PS 图像特效-非线性滤波器

利用非线性滤波器,使图像的色彩凝块,形成一种近似融化的特效. clc; clear all; addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm'); Image=imread('4.jpg'); Image=double(Image); size_info=size(Image); height=size_info(1); width=size_info(2); N=3; Image_out=Image; for i=1+

计算机视觉之图像特效(实现图像灰度处理等功能)(待更新。。。)

1.图像灰度处理 下面介绍四种图像灰度处理的方法: 方法1:cv2中的imread(参数:0表示为灰度图片,1表示为彩色图片) 测试代码如下: 1 import cv2 2 # 方法1 imread 3 img0 = cv2.imread('image0.jpg', 0) # 0 为灰度图片 1 为彩色图片 4 img1 = cv2.imread('image0.jpg', 1) 5 print(img0.shape) 6 print(img1.shape) 7 cv2.imshow('src0

【html】【14】特效篇--侧边栏客服

实例参考: http://sc.chinaz.com/tag_jiaoben/zaixiankefu.html 代码: css 1 @charset "utf-8"; 2 *{margin:0;padding:0;list-style-type:none;} //所有左上角开始坐标 3 a,img{border:0;} 4 body{font:12px/180% Arial, Helvetica, sans-serif, "新宋体";} //全部字体 5 /* si

图像边缘检测小结

边缘是图像中灰度发生急剧变化的区域边界.图像灰度的变化情况可以用图像灰度分布的梯度来表示,数字图像中求导是利用差分近似微分来进行的,实际上常用空域微分算子通过卷积来完成. 一阶导数算子 1)  Roberts算子 Roberts算子是一种斜向偏差分的梯度计算方法,梯度的大小代表边缘的强度,梯度的方向与边缘的走向垂直.Roberts操作实际上是求旋转45度两个方向上微分值的和.Roberts算子定位精度高,在水平和垂直方向的效果好,但对噪声敏感.两个卷积核Gx.Gy分别为: 采用1范数衡量梯度的幅