首页 > 其他分享 >图片平滑器

图片平滑器

时间:2023-07-11 20:22:19浏览次数:40  
标签:200 img int 平滑 单元格 100 图片

图像平滑器 是大小为 3 x 3 的过滤器,用于对图像的每个单元格平滑处理,平滑处理后单元格的值为该单元格的平均灰度。

每个单元格的  平均灰度 定义为:该单元格自身及其周围的 8 个单元格的平均值,结果需向下取整。(即,需要计算蓝色平滑器中 9 个单元格的平均值)。

如果一个单元格周围存在单元格缺失的情况,则计算平均灰度时不考虑缺失的单元格(即,需要计算红色平滑器中 4 个单元格的平均值)。

给你一个表示图像灰度的 m x n 整数矩阵 img ,返回对图像的每个单元格平滑处理后的图像 。

示例 1:

输入:img = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[0, 0, 0],[0, 0, 0], [0, 0, 0]]
解释:
对于点 (0,0), (0,2), (2,0), (2,2): 平均(3/4) = 平均(0.75) = 0
对于点 (0,1), (1,0), (1,2), (2,1): 平均(5/6) = 平均(0.83333333) = 0
对于点 (1,1): 平均(8/9) = 平均(0.88888889) = 0
示例 2:

输入: img = [[100,200,100],[200,50,200],[100,200,100]]
输出: [[137,141,137],[141,138,141],[137,141,137]]
解释:
对于点 (0,0), (0,2), (2,0), (2,2): floor((100+200+200+50)/4) = floor(137.5) = 137
对于点 (0,1), (1,0), (1,2), (2,1): floor((200+200+50+200+100+100)/6) = floor(141.666667) = 141
对于点 (1,1): floor((50+200+200+200+200+100+100+100+100)/9) = floor(138.888889) = 138

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/image-smoother
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

模拟思维

class Solution {
    public int[][] imageSmoother(int[][] img) {
        //获取图片大小
        int m = img.length,n = img[0].length;
        int[][] newImg = new int[m][n];
        //模拟平滑器
        for(int i = 0;i<m;i++){
            for(int j = 0;j<n;j++){
                //灰度==sum/count
                int count = 0,sum = 0;
                //如果存在的话找到周围的9格
                for(int x = i-1;x<=i+1;x++){
                    for(int y = j-1;y<=j+1;y++){
                        //找到符合规则的数字
                        if(x>=0&&x<m&&y>=0&&y<n){
                            count++;
                            sum += img[x][y];
                        }
                    }
                }
                newImg[i][j] = sum/count;
            }
        }
        return newImg;
    }
}

标签:200,img,int,平滑,单元格,100,图片
From: https://www.cnblogs.com/xiaochaofang/p/17545811.html

相关文章

  • 使用Python读取图片
    一、Python学习两大道具1.dir()工具作用:支持打开package,看到里面的工具函数示例:(1)输出torch库包含的函数dir(torch)(2)输出torch.AVG函数中的参数dir(torch.AVG)2.help()工具作用:说明书,查看库中函数某个参数的说明或使用方法示例:(1)输出torch库中AVG......
  • ckeditor粘贴word图片自动上传代码
    ​ ueditor粘贴不能粘贴word中的图片是一个很头疼的问题,在我们的业务场景中客户要求必须使用ueditor并且支持word的图片粘贴,因为这个需求头疼了半个月,因为前端方面因为安全的原因是不允许访问本地文件的。首先说一下,ueditor粘贴word图片的问题已经解决,但是不是纯web方法解决的,......
  • ckeditor粘贴word图片自动上传源代码
    ​ 1.4.2之后官方并没有做功能的改动,1.4.2在word复制这块没有bug,其他版本会出现手动无法转存的情况本文使用的后台是Java。前端为Jsp(前端都一样,后台如果语言不通得自己做Base64编码解码)因为公司业务需要支持IE8,网上其实有很多富文本框,效果都很好。例如www.wangEditor.com ......
  • 通过百度云获得图片验证码
    #!/usr/bin/envpython#-*-coding:utf-8-*-#@Time:2022/05/1610:21#@Author:Hero#@File:VerCodeFromBaidu.py#@Sofeware:PyCharm'''通过百度云获得图片验证码'''importosfromaipimportAipOcrclassgetwords():def__ini......
  • word图文混排复制到KindEditor图片不显示
    ​ 在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper。通过知乎提供的思路找到粘贴的原理,通过TheViper找到粘贴图片的方法。其原理为一下步骤:监听粘贴事件;【用于插入图片】获取光标位置;【......
  • 810-Air724UG(4G全网通GPRS)开发 - 模组把拍摄的照片通过http POST上传到服务器,服务
    <p><iframename="ifd"src="https://mnifdv.cn/resource/cnblogs/LearnAir724UG"frameborder="0"scrolling="auto"width="100%"height="1500"></iframe></p> 说明这节是模组控制摄像头采集到图......
  • Java图片加水印
    分为文字水印和透明图片水印packagecom.qms.report.util;importjavax.imageio.ImageIO;importjava.awt.*;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.IOException;publicclassImageWatermark{/***@paramwaterMarkType......
  • CVPR 2023 | 南洋理工、商汤提出E3DGE:2D图片秒出3D形象
    前言 在CVPR2023上,南洋理工大学-商汤科技联合实验室S-Lab的研究者提出的基于Encoder的快速3DGANInversion方法,针对现有3DGANinversion方法无法兼顾重建速度、重建质量和编辑质量的问题,提出一种自监督3DGANinversion训练框架。同时,通过构建全局-局部的多尺度结构以及2D-3D......
  • 驾驶舱静态图片
      ......
  • python图片去重复算法
    importosfromimagededup.methodsimportPHash#pipinstallimagededupphasher=PHash()defprocess_file(img_path):#生成图像目录中所有图像的二值hash编码encodings=phasher.encode_images(image_dir=img_path)duplicates=phasher.find_duplica......