RGB格式等比例缩放

原理为:将原始图像的每个像素通过一个比例关系式映射到相应的位置。

 1 /*
 2  lrgb:   input 24bits rgb buffer
 3  srgb:   output 24bits rgb buffer
 4  width:  input width
 5  height: input height
 6  xscale: changed vector
 7  yscale: changed vector
 8  */
 9 int lrgbtosrgb(unsigned char *lrgb, unsigned char *srgb, int width, int height, float xscale, float yscale)
10 {
11     int in = 0, out = 0;
12     int ox, oy;     //the pixel site is after changed
13     int rx, ry;     //the pixel site is before changed
14     int temp = 0;   //turn site(x,y) to memory storage
15     int outwidth = width * xscale;      //after changed width
16     int outheight = height * yscale;    //after changed height
17
18     //rx = ox/xscale + 0.5;// out--to--input
19     //ry = oy/yscale + 0.5;// out--to--input
20
21     for (oy = 0; oy < outheight; oy++)
22     {
23         ry = (int)(oy/0.5 + 0.5);
24         if(ry >= height)
25         ry--;
26         temp = ry * width *3;//origion pixel site of which width
27
28         for (ox = 0; ox < outwidth; ox++)
29         {
30             rx = (int)(ox/0.5 + 0.5);
31             if (rx >= width)
32                 rx--;
33             in = temp + rx * 3;//change site(x,y) to storage
34
35             srgb[out+0] = lrgb[in+0];
36             srgb[out+1] = lrgb[in+1];
37             srgb[out+2] = lrgb[in+2];
38
39             out += 3;
40         }
41     }
42     return 0;
43 }
时间: 2024-10-27 11:11:41

RGB格式等比例缩放的相关文章

css 布局之定位 相对/绝对/成比例缩放

给body添加 overflow: hidden; 可以将页面所有的 滚动条隐藏,但必须要给body 设置一个高度 overflow: hidden; height:864px; 父元素必须要设置 position:relative 必须设置 width 与 height 且不能用百分比 父层如果是图片,要使用  background: url(bg.jpg) no-repeat; 子元素必须设置 position: absolute; 必须设置 width 与 height 定位使用 top

PHP实例————图片等比例缩放功能

在网站开发的过程中,经常要对一些图片进行一些处理,比如说缩放,裁剪,加水印等等.当然这些功能不仅仅可以用在开发网站的过程中,平时需要对图片做一些处理的时候,把这个功能封装到函数中去,要处理图片的时候,根据自己的要求在函数中添加需要的参数不就搞定了么.虽说这个对于小白来说可能一下子上来就点困难,但是一回生二回熟嘛.好了,进入正题.今天分享一个图像等比例缩放的函数.需要中的同学可以稍作修改,然后自己拿去用,就省的自己写了(大神请无视). 1.首先,了解一下图片缩放中多需要的函数 有不太明白的可以用p

YUV / RGB 格式及快速转换算法

1 前言 自然界的颜色千变万化,为了给颜色一个量化的衡量标准,就需要建立色彩空间模型来描述各种各样的颜色,由于人对色彩的感知是一个复杂的生理和心理联合作用 的过程,所以在不同的应用领域中为了更好更准确的满足各自的需求,就出现了各种各样的色彩空间模型来量化的描述颜色.我们比较常接触到的就包括 RGB / CMYK / YIQ / YUV / HSI等等. 对于数字电子多媒体领域来说,我们经常接触到的色彩空间的概念,主要是RGB , YUV这两种(实际上,这两种体系包含了许多种具体的颜色表达方式和模

java读取jpg图片旋转按比例缩放

1 //入口 2 public static BufferedImage constructHeatWheelView(int pageWidth, int pageHeight, DoubleHolder scaleHolder) throws ValidateException{ 3 4 BufferedImage bi = new BufferedImage(pageWidth, pageHeight, BufferedImage.TYPE_INT_RGB); 5 Graphics2D g

等比例缩放生成缩略图

    ///    /// 等比例缩放生成缩略图    ///    /// 源图路径(物理路径)    /// 缩略图宽度    /// 缩略图高度(依缩略图宽度等比例计算所得)    public void MakeThumbnail(String originalImagePath, Int32 width, Int32 height)    {        //获取原始图片        using (System.Drawing.Image originalImage = Syst

jQuery实现等比例缩放大图片

在页面布局时,有时会遇到大图片将页面容器撑大,超出规定区域, 这时我们就需要将图片按比例缩放,让大图片自适应页面布局. 查看演示http://itmyhome.com/jquery_image_scaling/ 1.页面中有如下图片 <img alt="leaf" src="img/leaf.jpg"> 2.使用jQuery将图片缩放 <script type="text/javascript"> window.onloa

理解CSS3中的background-size(对响应性图片等比例缩放)

2016-03-10 01:40 by 空智, 7463 阅读, 8 评论, 收藏, 编辑 阅读目录 background-size的基本属性 给图片设置固定的宽度和高度的 固定宽度400px和高度200px-使用background-size:400px 200px缩放设置 固定宽度400px和高度200px-使用background-size:400px;的缩放设置,那么第二个参数会自动转换为auto 固定宽度400px和高度200px-使用background-size:100% 100%

jQuery实现的图片等比例缩放效果

jQuery实现的图片等比例缩放效果:如果一个容器中放一个比容器还要大的图,那就可能就造成布局出现问题,就算是不容器大,有时候也看起来不够美观,这时候就要限制图片的尺寸,当然不能变形,否则就难看了,下面就介绍一下如何使用jQuery实现等比例缩放效果.代码如下: <div id="demo"> <img src="a.jpg" width="800" height="300" alt="图片&quo

用UISliader和仿射变换-实现等比例缩放

今天在网上搜了一下没找到用slider实现等比例缩放的例子 今天自己做了一个大家看下.图片放大缩小,slider往左滑动缩小,slider往右滑动放大 #import "ViewController.h" @interface ViewController () { UIImageView * _umgView; UISlider * _sl; } @end @implementation ViewController - (void)viewDidLoad { [super view