社区
图形处理/算法
帖子详情
求图像缩放算法
milong
2007-05-09 07:43:33
有谁做过图像缩放算法吗?不是用StretchBlt直接放大的
...全文
480
5
打赏
收藏
求图像缩放算法
有谁做过图像缩放算法吗?不是用StretchBlt直接放大的
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tufaqing
2007-05-10
打赏
举报
回复
#include <windows.h>
#define HIGH 255
#define LOW 0
#define WIDTHBYTES(bits) ((DWORD)(((bits)+31) & (~31)) / 8)
int Scale(BYTE* image_in, BYTE* image_out, int bit_count, int xsize_in, int ysize_in, int xsize_out, int ysize_out)
{
int i, j, k, m, n;
float x, y, p, q;
unsigned long d, t;
float zx = xsize_out / (float)xsize_in;
float zy = ysize_out / (float)ysize_in;
int pixel_bytes = bit_count / 8;
memset(image_out, 0, WIDTHBYTES(xsize_out * bit_count) * ysize_out);
if(bit_count < 24) // 24位以下不处理
{
return -1;
}
for(j = 0; j < ysize_out; j++)
{
for(i = 0; i < xsize_out; i++)
{
y = j / zy;
x = i / zx;
m = (int) y;
n = (int) x;
q = y - m;
p = x - n;
if(q >= 1)
{
q -= 1; m += 1;
}
if(p >= 1)
{
p -= 1; n += 1;
}
if(m >= 0 && m < ysize_in - 1 && n >= 0 && n < xsize_in - 1)
{
d = 0;
for(k = 0; k < pixel_bytes; k++)
{
t = (unsigned long) ((1 - q) * ((1 - p) * *(image_in + m * WIDTHBYTES(xsize_in * bit_count) + pixel_bytes * n + k) +
p * *(image_in + m * WIDTHBYTES(xsize_in * bit_count) + pixel_bytes * (n + 1) + k)) +
q * ((1 - p) * *(image_in + (m + 1) * WIDTHBYTES(xsize_in * bit_count) + pixel_bytes * n + k) +
p * *(image_in + (m + 1) * WIDTHBYTES(xsize_in * bit_count) + pixel_bytes * (n + 1) + k)));
if(t < LOW)
t = LOW;
else if(t > HIGH)
t = HIGH;
d |= t << (8 * k);
}
}
else
d = LOW;
for(k = 0; k < pixel_bytes; k++)
{
*(image_out + j * WIDTHBYTES(xsize_out * bit_count) + pixel_bytes * i + k) = (BYTE) (d & 0xff);
d >>= 8;
}
}
}
return 0;
}
Rock_And_Roll
2007-05-10
打赏
举报
回复
StretchBlt 也许就是插值算法。
圆圆木公
2007-05-10
打赏
举报
回复
用逆运算的方法,把求后的象素矩阵对应到原来图像中相应的象素矩阵.逆向运算
milong
2007-05-10
打赏
举报
回复
谢谢了,去试试。。:)
Y___Y
2007-05-09
打赏
举报
回复
一般来说可用插值,一次的,二次的均可
yuv
图像缩放
算法
本文将深入探讨YUV
图像缩放
算法
,并通过一个具体的例子来解释如何在代码中实现这一过程。 YUV
图像缩放
涉及调整Y、U和V分量的像素大小,以适应不同的显示尺寸。常见的缩放方法包括最近邻插值、双线性插值和更高级的...
图片缩放
算法
原理
【图片缩放
算法
原理】 图片缩放是计算机图形学中常见的操作,用于调整图像的尺寸,使其适应不同的显示需
求
。
图像缩放
分为放大和缩小,通常涉及到像素级别的处理。这里我们将探讨一种常用的
图像缩放
算法
——双线性内...
图像缩放
算法
的超简单讲解.pdf
"
图像缩放
算法
的超简单讲解"
图像缩放
算法
是计算机图像处理中的一种基本技术,它可以将图像放大或缩小到不同的大小。今天,我们将讨论一种简单的
图像缩放
算法
,称为最临近插值
算法
,并且还将介绍一种更好的
图像缩放
...
边缘自适应
图像缩放
算法
### 边缘自适应
图像缩放
算法
#### 概述
图像缩放
是图像处理领域中的一个重要技术,涉及图像分辨率的转换、尺度变换等过程。它在多种应用场景中发挥着关键作用,例如适应不同的显示设备(如液晶显示屏、等离子彩电...
图像缩放
算法
本篇文章将深入探讨三种常见的
图像缩放
算法
:邻近像素插值
算法
、二线性插值
算法
以及立方卷积
算法
。 1. 邻近像素插值
算法
: 这是最简单也最快速的缩放方法。当放大图像时,新位置的像素颜色取自最近的原始像素;当...
图形处理/算法
19,472
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章