精华内容
下载资源
问答
  • python 灰度图片转二值图片

    千次阅读 2018-12-23 19:46:29
    python 灰度图片转二值图片 img = cv2.imread("G:/imgHui/jiaoshi.jpg") Grayimg = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) ret, thresh = cv2.threshold(Grayimg, 120, 225,cv2.THRESH_BINARY) cv2....

    python 灰度图片转二值图片

    img = cv2.imread("G:/imgHui/jiaoshi.jpg")
        Grayimg = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
        ret, thresh = cv2.threshold(Grayimg, 120, 225,cv2.THRESH_BINARY)
        cv2.imwrite('G:/imgHui/2.jpg', thresh)
    

    threshold
    第一个参数是灰度图片
    第二个参数是阈值

    展开全文
  • 在写论文的时候,很多学校要求正文行距为固定(比如说23磅),这时候在正文中的图片格式往往是嵌入式的,也就被当做文本的一部分,故其只能在word文档中显示出一小部分。解决这个问题最简单的方法就是把图片格式...

      在写论文的时候,很多学校要求正文行距为固定值(比如说23磅),这时候在正文中的图片格式往往是嵌入式的,也就被当做文本的一部分,故其只能在word文档中显示出一小部分。解决这个问题最简单的方法就是把图片格式修改成环绕式(上下环绕),但是对于图片较多的人来说,一张张修改过去很麻烦,所以推荐尝试使用本文的简要方法,即把图片单独创建一个样式,与正文的行距分隔开。具体步骤如下:
      然后只要把每个图片转换为这个新设立的样式,再修改正文样式-段落-行距,这样图片就不会被遮挡了

    展开全文
  • 一般,对图片进行二化时,我们会先进行灰度化,再进行阈值处理,可以自己根据灰度图片本身设置阈值,也可以根据graythresh函数自动确定阈值,如下: 但是这样做的效果往往不是很好,因为二图最后的结果往往模糊...

    一,概述

    一般,对图片进行二值化时,我们会先进行灰度化,再进行阈值处理,既可以自己根据灰度图片本身设置阈值,也可以根据graythresh函数自动确定阈值,如下:

    I = imread('input1.jpg');
    [h, w, src] = size(I);
    if src == 3
        I = rgb2gray(I);
    end
    a = 160;
    %I = I > a;
    I = im2bw(I, graythresh(I) * 0.9);
    imshow(I);imwrite(I, 'test.jpg');

    但是这样做的效果往往不是很好,因为二值图最后的结果往往模糊不清,不具备层次感。本文提出了一种算法,将灰度图转换成层次分明的二值图,下面是对比图:

    原图                阈值确定的二值图               层次分明的二值图



    二,算法思路

    由于二值图中的像素要么是0,要么是1,因此我们不能依靠色阶来产生二值图层次分明的效果,我们只能使较暗的地方像素多些,较亮的地方像素少些,因此本文采用了模板的方法,通过原图与模板进行像素大小的比较,根据概率高低可以保证较暗的地方像素多,较亮的地方像素少。算法的大致思路分为以下几个部分:

    1),本文采用了4*4的模板,因此需要将原图尺寸的大小扩充至4的整数倍,为保证原图尽量不被拉伸,若原图的高为w,宽为h,则设置新的高W = floor(w / 4.0) + 1,

    H = floor(h / 4.0) + 1;

    2),设置模板,若将原图片以4*4的小矩阵为单位进行分割,如下,之后再对每个小矩阵分别与模板进行比较。为了保证图片效果的随机性,每次进行比较的模板都应该具备随机性。

    对于模板的设置,可以先使template = 1: 16,然后利用随机数rand(1)随机打乱,最后再变形成矩阵,由于灰度值的范围为0~255,因此最后对模板的每个像素都应乘以16或者15,才能保证随机性。

    3),上一步基本上能将原图的效果显示出来,但可能由于随机性的关系造成了轮廓有些不清晰,因此需要从原始灰度图中提供轮廓,再与上一步生成的二值图进行或操作。


    三,具体代码

    程序如下,太部分语句比较基础,就不细述了,其中代码1是根据上述算法流程写的,代码2为调用的随机模板:

    注意的地方:使用rand(1)函数时,即使round(rand(1)*16),最后的整数结果可能为0,而matlab中的下标都是从1开始,因此需要重新取随机值。

    代码1:

    clear; clc;
    %读入原图灰度化
    I = imread('input1.jpg');
    [h, w, src] = size(I);
    if src == 3
        I = rgb2gray(I);
    end
    figure,
    subplot(211), imshow(I), title('原始灰度图像');
    subplot(212), plot(imhist(I)/(h*w)), title('直方图');
    %imshow(I), title('原始灰度图像');
    %扩展图像高和宽为4K, K为整数
    a = 4.0;
    k1 = floor(h / a) + 1;
    k2 = floor(w / a) + 1;
    M = k1 * a;
    N = k2 * a;
    I = imresize(I, [M, N]);
    figure, imshow(I), title('4的整数倍图像灰度图像');
    %利用随机模板生成二值化图
    I_er = zeros(M, N);
    for i = 1: a: M
        for j = 1: a: N
            newTemplate = RandomTemplate();
            I_er(i: i+a-1, j: j+a-1) = I(i: i+a-1, j: j+a-1) > newTemplate;
        end
    end
    %随机模板造成轮廓不清晰,需要|原来的轮廓
    I = im2double(I);
    imX = [abs(I(:,1:(end-1)) - I(:,2:end)), zeros(M, 1)];%最右边增加一列0  
    imY = [abs(I(1:(end-1),:) - I(2:end,:)); zeros(1, N)];%最下边增加一行0  
    imX = imX .^ 2;  
    imY = imY .^ 2;
    imEdge = sqrt(imX + imY);
    imEdge = immultiply(imEdge, 5); 
    imEdge = imEdge .^ 50;%次数越多,数值越低,黑色像素越少
    imEdge = uint8(imEdge .* 255);
    imEdge = im2bw(imEdge, graythresh(imEdge)*0.4);
    figure, imshow(imEdge);
    figure, imshow(I_er), title('二值图像I_er');
    imwrite(I_er, 'shili.bmp');
    I_er1 = ~(~I_er | imEdge);
    figure, imshow(I_er1), title('二值图像I_er1');
    imwrite(I_er1, 'shili1.bmp');
    

    代码2:随机模板取值函数

    function newTemplate = RandomTemplate()
        newTemplate = 1: 16;
        %将数字1,2...16随机放在newTemplate中,根据rand进行16次置换
        for i = 1: 16
            num = round(rand(1)*16);
            while num == 0
                num = round(rand(1)*16);
            end
            temp = newTemplate(i);
            newTemplate(i) = newTemplate(num);
            newTemplate(num) = temp;
        end
        newTemplate = 15 * reshape(newTemplate, 4, 4);%16时黑点过多,效果不好
    end


    四,一些展示

    原始图                               模板生成的二值图

    说明:

    如果将图片放大的话,我们能看到如下的图,这是因为二值图只有0和1两种像素,需要靠黑像素多少来造成明暗分布的效果:




    展开全文
  • 主要修改图片dpi,原理:电脑一般dpi为96,图片dpi超过这个后,图片清晰度没多大变化,降低图片dpi就能大幅度降低图片大小,如图片dpi为180,将其降到96后,图片宽高比例不变,图片大小也会降到很小。...

    主要修改图片dpi值,原理:电脑一般dpi为96,图片dpi超过这个值后,图片清晰度没多大变化,降低图片dpi值就能大幅度降低图片大小,如图片dpi为180,将其降到96后,图片宽高比例不变,图片大小也会降到很小。


    class ImageHelper

        {
            /// <summary>
            /// 图片压缩(若width或height其中一个为值为零,则按原比例宽高压缩);
            /// </summary>
            /// <param name="postFile">原图片路径</param>
            /// <param name="saveFilePath">压缩图片存储文件夹路径</param>
            /// <param name="width">压缩图片宽度</param>
            /// <param name="height">压缩图片高度</param>
            /// <param name="imgResolution">单位分辨率(dpi)</param>
            public static void Compress(string postFile, string saveFilePath,int width,int height, float imgResolution)
            {
               if(File.Exists(postFile))
               {
                   System.Drawing.Image img = null;
                   Bitmap bit = null;
                   try
                   {
                       img = System.Drawing.Image.FromFile(postFile);
                       bit = new Bitmap(img);
                       bit.SetResolution(imgResolution, imgResolution);//设置dpi
                       if (width != 0 && height != 0)
                       {
                           bit.SetPixel(width, height, Color.Transparent);//设置宽高
                       }


                       if (File.Exists(postFile))
                       {
                           string saveFile = saveFilePath + Path.GetFileNameWithoutExtension(postFile) + "_";
                           string extension = Path.GetExtension(postFile);
                           if (extension != null)
                           {
                               string imgFormat = extension.ToLower();
                               switch (imgFormat)
                               {
                                   case ".jpg":
                                       bit.Save(saveFile + ".jpg", ImageFormat.Jpeg); break;
                                   case ".jpeg":
                                       bit.Save(saveFile + ".jpeg", ImageFormat.Jpeg); break;
                                   case ".png":
                                       bit.Save(saveFile + ".png", ImageFormat.Png); break;
                                   case ".bmp":
                                       bit.Save(saveFile + ".bmp", ImageFormat.Bmp); break;
                               };
                           }
                       }
                   }
                   catch(Exception e)
                   {
                       throw new Exception(e.ToString());
                   }
                   finally
                   {
                       if (img != null)
                       {
                           img.Dispose();
                       }
                       if (bit != null)
                       {
                           bit.Dispose();
                       }
                   }
               }

            }

        }
    }

    展开全文
  • Python改变图片像素

    千次阅读 2019-04-25 20:22:25
    Python改变图片像素
  • 获取图片像素点颜色

    千次阅读 2014-12-10 17:54:54
    获取图片任意像素的颜色
  • 图片灰化和二

    千次阅读 2017-11-02 12:43:01
    图片灰化和二化处理
  • python图片

    千次阅读 2015-10-26 19:01:37
    python图片
  • 汉字图片化提取

    千次阅读 2019-04-04 14:35:18
    汉字图片化提取
  • 应用哈希更改图片hash

    千次阅读 2018-11-09 11:12:28
    应用哈希更改图片hash    AppStore提交App时会遇到相同应用审核被拒的问题: 这个应用程序复制了你或其他开发者提交给app Store的其他应用程序的内容和功能,这被认为是垃圾邮件的一种形式。  应用哈希...
  • 修改PPT导出图片DPI

    千次阅读 2019-11-02 23:10:00
    PPT导出的图片DPI一般是150的,而有时我们需要更高DPI的图片提交给杂志社(或者其他奇奇怪怪的用途),那怎么搞呢?...2.修改PPT导出DPI,方法如下: 方法一: ->按下"win+r"->输入"regedit" -&...
  • # 图片化 from PIL import Image img = Image.open('test.jpg') # 模式L”为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。 Img = img.convert('L') Img.save("test1.jpg...
  • 统计图片中黑白像素程序

    千次阅读 2018-07-10 12:45:01
    统计二图片白色像素点个数 //统计二图片白色像素点个数 //输入二图像,返回白色像素点个数 int bSums(Mat src) { int counter = 0; //迭代器访问像素点 Mat_&lt;uchar&gt;::iterator it = ...
  • 图片化工具

    千次阅读 2018-01-22 18:26:01
    通常直接拍摄书籍纸张总是灰乎乎的,应用opencv自适应阈值二化可以很方便的将照片转化为清晰的二化照片,打印出来也不会是黑的,代码如下: #! python2 # -*- coding:utf-8 -*- import numpy as np import cv...
  • java 图片

    万次阅读 2017-03-20 11:44:54
    * 二化(好用) * @param src * @param dest * @return */ public BufferedImage filter(BufferedImage src, BufferedImage dest) { int width = src.getWidth(); int height = src.getHeight(); ...
  • 图像二化( Image Binarization)就是将图像上的像素点的灰度设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程。在数字图像处理中,二图像占有非常重要的地位,图像的二化使图像中数据量大为减少...
  • Android获取图片任意一点的RGB

    万次阅读 热门讨论 2015-12-01 14:43:46
    最近要做一个点击图片任何一个地方取色然后传给蓝牙设备的一个功能。在网上搜索了一番,大部分都是重复,有的功能实现了,但是效果不好,大部分都取色不准确,偏差有点大,于是决定还是自己动手写了一个,在这里...
  • 对比两张图片的MD5

    万次阅读 2018-08-01 15:39:02
    图片上传的时候,通过对比两张图片的MD5,判断图片是否上传成功。
  • Devexpress gridcontrol列中根据显示图片
  • 因某个需求 需要把所以图片化 转成白底黑字,所以需要对批量二化的图片进行判断,如果是黑底白字再进行处理 测试代码: from PIL import Image image = Image.open(r"F:\studytest\03.jpg") # 二化后...
  • 获取图片上任意一点的颜色

    千次阅读 2019-03-14 12:46:55
    点击屏幕上任意一点,获取点击处的颜色(RGB),还可以将十进制颜色转化为十六进制颜色显示,下面是个程序的样例: package com.junto.text; import android.app.Activity; import android.graphics.Bitmap...
  • python图片简易二

    千次阅读 2015-09-14 18:38:12
    python图片简易二
  • 用js怎么实现根据图片路径获得图片的像素和分辨率,用于判断低像素和黑白照片或者空白照片。
  • matlab修改图片部分像素

    千次阅读 2019-03-27 16:42:39
    在这里使用的是批量对图像进行像素的修改,原图片是二图,现在需要将图片当中白色部分255的修改为1,这样方便后续的工作。 如果是单张的图像工作可以直接使用循环部分进行操作。 clear all; clc; OutputDir = ...
  • 不知道动了什么地方,opencv打开图片后,鼠标放在图片上能自动显示x,y的像素 int main() { Mat image = imread("jinmu2.jpg"); Mat image_gray; cvtColor(image, image_gray, CV_RGB2GRAY); imshow(...
  • 获取图片某一点的rgb色

    千次阅读 2015-12-01 10:45:57
    注意点:不能对图片进行缩放,否则色不准,imageview的宽高要跟据图片的尺寸设置,不能有偏差,比如你要取一个200*200像素的图片上某一点的色,那么该imageview的宽高就应该是(200,200) - (UIColor *)...
  • Python之修改图片像素

    万次阅读 2018-10-31 16:39:52
    在做语义分割项目时,标注的图片不合标准,而且类型是RGBA型,且是A的部分表示的类别,因此需要将该图片转化为RGB图片 # -*- coding:utf8 -*- import os from PIL import Image im = Image.open('123.png')#打开...
  • 点击四张小图片中任意一张,使大图片也和...//这是大图片 &lt;div id=""&gt; &lt;img :src="titleImg"/&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id="
  • 笔者小白在神经网络训练好然后进行手写数字的图片预测的时候碰到了这样的问题。利用python如何读取、保存、二化、灰度化图片呢?如何利用opencv来处理图片呢?

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,100,056
精华内容 440,022
关键字:

值图片