zoukankan      html  css  js  c++  java
  • dpi 分辨率

    c语言opencv,处理一幅图像,处理后的图像的长宽保持不变,

    如何保持图像的dpi和图像解像度保持不变?

     
    最佳答案
     
    opencv里提供了函数,貌似叫cv_resize函数,可以指定分辨率。只要获取原图像的分辨率,按比例重新指定新的分辨率就行了。
     
    追问
    这个函数我知道 是调整图片长宽的 我指的是DPI 图像的解像度保持不变,这个你知道吗?
     
    追答
    你的问题有点歧义,DPI指的是每英寸的像素点数。也就是说同样是1920*1080分辨率的一张图像,比如在7寸的面积内显示和在70寸的面积上进行显示,
    这个时候DPI才是有差别的。图像的分辨率在两次显示的过程中是没有变化的。也就是说DPI取决于屏幕大小,与图像的分辨率是没有关系的。
     
    追问
    那问一下,在通过VC处理后,图像的DPI可以保持不变吗?有什么方法吗?我发现原来是1200的通过处理后却变成了72
     
    追答
    我觉得你还是没太弄明白分辨率、dpi之间的区别。举个栗子啊,三星note3手机的分辨率是1920*1080,屏幕尺寸为5.7英寸,
    同时某款桌面显示器分辨率也是1920*1080,屏幕尺寸23英寸。现在你有一张1920*1080的图片同时用来给两款设备作为屏幕桌面背景,
    问,那个设备上DPI高?答案是在三星note3手机上的图片DPI高。这是因为在不提屏幕尺寸的前提下来谈DPI,那都是耍流氓!
    opencv能做的只是改变图片的分辨率,再举个例子吧:一张1920*1080分辨率的图片,在边长12英寸(不是对角线长度)的屏幕上进行显示。
    然后使用opencv进行分辨率缩放,调整为960*540(长宽各缩小一半,面积缩小为1/4)。如果还在原来的12寸显示器上显示,
    那么此时DPI降低为原来的1/4,因为尺寸没变,图像缩小了1/4。那像你说的想要DPI不变怎么办呢?
    用一个3英寸(边长,非指对角线长度)的屏幕来显示,这样图像缩小为1/4,显示屏幕也缩小为1/4.这样DPI保持不变。
  • 相关阅读:
    Online ddl 工具之pt-online-schema-change
    【MySql】mysql 慢日志查询工具之mysqldumpslow
    赶集网mysql开发36条军规
    MySQL数据库高并发优化配置
    mysql的表分区
    mysql 如果处理货币金钱类型
    bootstrab table+表格 select可编辑完整实例
    mongoDb 给表添加+ 删除字段
    mongoDb +Java+springboot
    java+数据库+D3.js 实时查询人物关系图
  • 原文地址:https://www.cnblogs.com/Crysaty/p/6531497.html
Copyright © 2011-2022 走看看