(一)基础知识

图片的放大和缩小如果不是等比例的话一定会带来图像的畸变。

(1)图像的缩小

(2)图像的放大


(3)图像任意不成比例放大

(二)软件设计

在这里我为了省事并没有进行特别复杂的查只算法而是直接用之前的像素值填充。所以放大倍数超过一定限度一定会产生失真。

/*** @name: Li_Get_Roi* @msg: 获取感兴趣区域* @param {Li_Image* img 原图像*         LONG x1       左下角所在列号*         LONG y1       左下角所在行号*         LONG x2       右上角所在列号*         LONG y2}      右上角所在行号* @return {Li_Image*}*/
LI_API
Li_Image* Li_Get_Roi(Li_Image* img,LONG x1,LONG y1,LONG x2,LONG y2)
{if(img==NULL||x2<x1||y2<y1||x2<0||x1<0||y2<0||y1<0) return NULL;Li_Image* out=Li_Create_Image(x2-x1,y2-y1,img->imgdepth,img->pt);for(int i=y1;i<y2;i++)for(int j=x1;j<x2;j++){BYTE* ptr1,*ptr2;ptr1=out->at(out,j-x1,i-y1);ptr2=img->at(img,j,i);memcpy(ptr1,ptr2,img->imgdepth+1);}return out;
}/*** @name: Li_ReShape* @msg: 调整图像大小* @param Li_Image* img  原图像*        LONG tag_width 图像宽度*        LONG tag_height图像高度* @return {*}*/
LI_API
Li_Image* Li_ReShape(Li_Image* img,LONG tag_width,LONG tag_height)
{Li_Image* out;double dy=(double)tag_height/img->height;double dx=(double)tag_width/img->width;out=Li_Create_Image(tag_width,tag_height,img->imgdepth,img->pt);for(int i=0;i<tag_height;i++)for(int j=0;j<tag_width;j++){BYTE* ptr1,*ptr2;ptr1=out->at(out,j,i);ptr2=img->at(img,(LONG)((double)j/dx),(LONG)((double)i/dy));memcpy(ptr1,ptr2,img->imgdepth+1);}return out;
}

(三)应用举例

/** @Descripttion: * @version: * @Author: Yueyang* @email: 1700695611@qq.com* @Date: 2020-10-26 19:35:49* @LastEditors: Yueyang* @LastEditTime: 2020-11-10 21:24:05*/#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include "bmp.h"
#include "cv.h"
#include "li_image.h"
#include "li_painter.h"
#include "li_image_proc.h"int main()
{BYTE* ptr=NULL;Li_Image* out =Li_Load_Image("./picture/whu_rgba.bmp",LI_BMP_32);Li_Image* Roi =Li_Get_Roi(out,20,20,300,300);Li_Save_Image("Roi.bmp",Roi);Li_Image* img= Li_ReShape(Roi,512,512);Li_Save_Image("shape.bmp",img);LILOG("over");return 0;
}

原图:

变换后:

(四)写在后面

因为LiteCV项目才刚刚写了一个开头,代码中有错误的地方还望指出。我已经将项目同步到了github,我会实时更新这个代码仓库。
项目github地址:
LiteCV

【数字图像处理】图像感兴趣区域与图像放大与缩小相关推荐

  1. OpenCV实战(3)——图像感兴趣区域

    OpenCV实战(3)--图像感兴趣区域 0. 前言 1. 感兴趣区域 1.1 ROI 实例 1.2 定义 ROI 2. 使用图像掩码 3. 完整代码示例 小结 系列链接 0. 前言 在实际应用场景下 ...

  2. 乳腺肿瘤超声图像感兴趣区域的自动识别综述

    1.  研究背景与意义 乳腺恶性肿瘤是女性最常见的恶性肿瘤之一,其死亡率已经超过宫颈癌死亡率,位居癌症死亡率的前五名 [d1]. 美国癌症协会的调查报告 [d2] 显示2008年全球新发乳腺癌病例达1 ...

  3. 基于matlab得图像感兴趣区域提取

    对于图像感兴趣区域(ROI)的提取,一般从来两个方面着手解决:一是利用图像分割技术提取ROI:二是从人眼得视觉特征出发,通过模拟人眼得视觉特点,寻找特定得视觉敏感区域,并将这些视觉敏感区域排序作为RO ...

  4. 提取图像感兴趣区域_从图像中提取感兴趣区域

    提取图像感兴趣区域 Welcome to the second post in this series where we talk about extracting regions of intere ...

  5. 设置图像感兴趣区域(RIO)

       在图像处理区域,我么长需要设置感兴趣的区域(RIO,region of interest),来专注或简化工作.它通俗的的意思的就是从图像中选取一个区域图像,这个区域是图像分析的重点.我们圈定这个 ...

  6. 2.3 感兴趣区域(ROI)

    一.ROI介绍 二.操作 一.ROI介绍 我们可能对图像中的某一个特定区域感兴趣,改区域称为感兴趣区域(Region of Interest,ROI). 二.操作 (1)显示一幅图像的感兴趣区域 im ...

  7. matlab如何手动选择图像目标区域,如何用MATLAB实现感兴趣区域ROI的选取

    描述 感兴趣区域 感兴趣区域(Regions of Interest,ROI)这一概念,是指图像中最能引起用户兴趣.最能表现图像内容的区域.感兴趣区域(Regions of Interest,ROI) ...

  8. LabVIEW感兴趣区域分析(实战篇—1)

    目录 1.ROI定义及实现方法 2.基础案例:图像感兴趣区域手动标记 3.进阶案例:图像颗粒自动标记 ROI(region of interest),感兴趣区域.机器视觉.图像处理中,从被处理的图像以 ...

  9. 钢板表面缺陷感兴趣区域检测算法

    钢板表面缺陷感兴趣区域检测算法 图像预处理作为缺陷图像检测的关键环节,对缺陷分割和识别的精度产生重要影响.图像预处理包括:原始钢板图像感兴趣区域(Region of Interest,ROI)检测 ...

  10. openCV任意几何形状感兴趣区域(ROI)提取

    图像感兴趣区域(ROI)提取主要使用掩模来进行.掩模是二值图像,感兴趣区域的掩模值设置为255,非感兴趣区域的掩模值为0 获取掩模的方法主要有两种 方法一 使用opencv中Mat函数方法,调用Mat ...

最新文章

  1. 关于开始申请2010年4月份微软MVP的通知!
  2. 【从caffe到Tensorflow 1】io 操作
  3. python socket自动重连_详解python3中socket套接字的编码问题解决
  4. day28 socketserver
  5. jquery实现图片放大效果
  6. Oracle官网登录下载资源账号密码共享
  7. Mac Sublime Text设置中文
  8. 广西壮族自治区公安厅信息中心异地容灾系统(三期)项目招标
  9. blowfish加密算法(c实现)
  10. error: RPC failed; curl 55 OpenSSL SSL_write: SSL_ERROR_ZERO_RETURN, errno 10053
  11. 记一次safari浏览器正则表达式兼容问题
  12. flash崩溃未保存!
  13. 如何配置SQL Server 2008管理器_过路老熊_新浪博客
  14. OpenCV信用卡识别
  15. 计算机的可持续发展问题,可持续发展视角下的计算机教育优化
  16. 跟我一起学软考吧 | (中级)多媒体应用设计师—备考软件推荐
  17. android xml 里的 app,xml中的android、app、tools你真的了解吗
  18. python学习笔记(一)基础语法 — 参考创客智造
  19. Java修炼之凡界篇 筑基期 第03卷 流程控制 第04话 循环结构
  20. OPT101单片光电二极管和单电源互阻放大器使用说明

热门文章

  1. 创建APPLEID 和申请成为开发者
  2. JS数据结构中的集合结构详解
  3. python元编程的书_C++模板元编程 PDF 超清版
  4. Delphi程序破解技术概要
  5. 基于jQuery+cookie的视频断点续播
  6. shell脚本实战之坦克大战小游戏
  7. MATLAB滑动窗口(移动方差)
  8. m个苹果放在n个盘子里面有多少种放法?(动态规划)
  9. oracle表空间缩减操作手册
  10. Linux串口调试总结