Android图片转换类 1. Bitmap去色,转换为黑白的灰度图, 2. Bitmap图片加圆角效果

YUV 数据和 Bitmap 互相转换 阅读详情
/** 
 * 处理图片的工具类.
 * 
 */
public class ImageTools {
    
    /***//**
     * 图片去色,返回灰度图片
     * @param bmpOriginal 传入的图片
     * @return 去色后的图片
     */
    public static Bitmap toGrayscale(Bitmap bmpOriginal) {
        int width, height;
        height = bmpOriginal.getHeight();
        width = bmpOriginal.getWidth();    


        Bitmap bmpGrayscale = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
        Canvas c = new Canvas(bmpGrayscale);
        Paint paint = new Paint();
        ColorMatrix cm = new ColorMatrix();
        cm.setSaturation(0);
        ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
        paint.setColorFilter(f);
        c.drawBitmap(bmpOriginal, 0, 0, paint);
        return bmpGrayscale;
    }
    
    
    /***//**
     * 去色同时加圆角
     * @param bmpOriginal 原图
     * @param pixels 圆角弧度
     * @return 修改后的图片
     */
    public static Bitmap toGrayscale(Bitmap bmpOriginal, int pixels) {
        return toRoundCorner(toGrayscale(bmpOriginal), pixels);
    }
    
    /***//**
     * 把图片变成圆角
     * @param bitmap 需要修改的图片
     * @param pixels 圆角的弧度
     * @return 圆角图片
     */
    public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) {


        Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap
                .getHeight(), Config.ARGB_8888);
        Canvas canvas = new Canvas(output);


        final int color = 0xff424242;
        final Paint paint = new Paint();
        final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
        final RectF rectF = new RectF(rect);
        final float roundPx = pixels;


        paint.setAntiAlias(true);
        canvas.drawARGB(0, 0, 0, 0);
        paint.setColor(color);
        canvas.drawRoundRect(rectF, roundPx, roundPx, paint);


        paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
        canvas.drawBitmap(bitmap, rect, rect, paint);


        return output;
    }


    
    /***//**
     * 使圆角功能支持BitampDrawable
     * @param bitmapDrawable 
     * @param pixels 
     * @return
     */
    public static BitmapDrawable toRoundCorner(BitmapDrawable bitmapDrawable, int pixels) {
        Bitmap bitmap = bitmapDrawable.getBitmap();
        bitmapDrawable = new BitmapDrawable(toRoundCorner(bitmap, pixels));
        return bitmapDrawable;
    }
}
Android 实现把bitmap图片的某一部分的颜色改成其他颜色 把bitmap图片的某一部分的颜色改成其他颜色 private Bitmap ChangeBitmap(Bitmap bitmap){ int bitmap_h; int bitmap_w; int mArrayColorLengh; int[] mArrayColor; int count = 0; mArrayColorLengh = bitmap.getWidth() * bitmap.getHeight(); mArrayColor = new int[mArrayColorLengh]; bitmap_w=bitmap.getWidth(); bitmap_h = 立即下载

相关推荐

AI Agent评估:指标、策略与最佳实践

AI智能体正逐渐融入到各个领域,从日常的对话助手到复杂的工作流程自动化,其应用范围不断拓展。然而,确保这些智能体能够可靠、高效地完成任务至关重要,这就使得AI智能体评估成为了人工智能发展过程中不可或缺的一环。本文将深入探讨AI智能体评估的指标、策略以及最佳实践,为读者全面解读这一关键领域。

llm_way的博客 3498

JNI下使用AndroidBitmap_lockPixels修改位图为黑白照片

这次使用的场景是QQ好友下线后头像变黑白 使用了NDK中提供的位图解析接口 android\bitmap.h库中的三个接口 并且一共也是三个接口 至少到目前为止是三个 关于这个库的接口 点击查看android-ndk-r9d\android\bitmap.h好友下线的效果图如下(图片尺寸900*675,位深度24) android部分代码 public class Ma

Ataraxia的专栏 7408

关于华为高斯数据库出现Invalid or unsupported by client SCRAM mechanisms定位解决的过程

最近公司有个新项目使用的是高斯数据库,因为我们的项目是直接从别的项目组拿来的,配置都是已经配好的,但是在放到正式环境上之后出现报错。起初我们以为是测试和正式的版本不一致,但是结果是版本一致的。最后这个问题搞了我们几个小时,都没法解决。

Curtisjia的博客 3176

【Android】Bitmap图像色彩模式:黑白、模糊、老照片、胶卷等(92/100)

简单的点胜过复杂的高明

产品:SmartApi;服务:大前端++;其他技术分享 1674

yolov7模型部署流程

yolov7部署流程

算法的猫 1396

Zemax操作--2(单透镜和双胶合透镜优化)

单透镜 要求 镜头数据里面的数量变化后要重新设计优化函数 设计 一、初始参数 按照要求输入波长、入瞳孔径、视场数据编辑器如图 物面--透镜前表面--透镜后表面--相面(镜头数据再插入一个面如图) 将2面曲率半径F数设置为10,zemax自动给出合适值 设置面2的边缘光线高度,zemax自动给出合适值 二、评价参数设置 将面1曲率半径设置为变量 再设置评价函数告诉zemax我们需要什么条件,评价函数默认即可 执行优化 双胶合透镜 要求 ...

lzy750750的博客 1万+

Android bitmap 颜色替换

一贯风格直接上代码, 一直以为颜色替换会使很高深的东西,今天自己项目需要写了一下,so easy public Bitmap replaceBitmapColor(Bitmap oldBitmap, int oldColor, int newColor) { Bitmap mBitmap = oldBitmap.copy(Bitmap.Config.ARGB_8888, true)

小强Stronger的博客 3510

QTest 单元测试框架及单元测试思考

qt 单元测试框架 QTEST 及思考

一个老菜鸟的学习分享 1万+

android bitmap 替换指定颜色,Android 实现把bitmap图片的某一部分的颜色改成其他颜色...

把bitmap图片的某一部分的颜色改成其他颜色private Bitmap ChangeBitmap(Bitmap bitmap){int bitmap_h;int bitmap_w;int mArrayColorLengh;int[] mArrayColor;int count = 0;mArrayColorLengh = bitmap.getWidth() * bitmap.getHeight...

weixin_31470259的博客 656

芒果YOLO11改进23:主干Backbone篇GhostNet:原创改进高效 GhostNet 网络,华为出品,打造全新检测器

主干Backbone篇GhostNet:原创改进高效 GhostNet 网络,华为出品,打造全新检测器

包括YOLOv5、YOLOv7、YOLOv8等模型改进 404

我终于停止写 JUnit 了!用 JavaParser + GPT-4 自动生成 90% 覆盖率的单元测试

本文介绍了一种基于JavaParser和GPT-4的智能单元测试生成方案。针对开发者在单元测试编写中面临的繁琐、无聊和硬指标等问题,提出通过AST语法树分析代码结构,提取关键信息后生成精准提示词,再调用GPT-4自动生成高质量的单元测试代码。文章详细阐述了技术原理、实现步骤(包括JavaParser解析、上下文感知提示词构建和GPT-4调用),并展示了该方法能自动识别依赖、Mock对象和覆盖边界条件,显著提升测试效率。同时指出了在复杂数据结构、私有方法测试等方面的局限性,最终强调这种技术组合可以解放开发者,

BUG猿的博客 1127

分享一个Android图片转换类 1. Bitmap去色,转换为黑白的灰度图, 2. Bitmap图片加圆角效果(转)...

/**2*处理图片的工具类.3*4*/5publicclassImageTools{67/**8*图片去色,返回灰度图片9*@parambmpOriginal传入的图片10*@return去色后的图片11*/12publicstaticBitmaptoGrayscale(Bi...

di47550807的博客 184

RT-Thread littefs控制GD32F4xx片内Flash

GD32F4xx RT-Thread下使用littefs 控制片内flash 调试记录

madao1234的博客 995

Hello Android - Bitmap转换为黑白的灰度图和加圆角效果

/** * 处理图片的工具类. * */ public class ImageTools { /***//** * 图片去色,返回灰度图片 * @param bmpOriginal 传入的图片 * @return 去色后的图片 */ public static Bitmap toGrayscale(Bitmap bmpOr

luoxiangyu001的专栏 5018

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

电子墨水屏UI开发的核心规范:从刷新机制到低功耗实践

电子墨水屏作为一种低功耗显示技术,在IoT设备、电子阅读器与信息看板等领域应用广泛。与传统LCD不同,其成像依赖微胶囊电泳原理,刷新速度慢且支持灰度有限,这决定了UI开发必须重构设计逻辑。核心挑战在于局部刷新带来的残影控制、灰度量化对清晰度的影响,以及刷新策略与功耗的平衡。工程实践中,通过离屏渲染、批量更新与定时全刷可有效提升稳定性;结合树莓派、ESP32等嵌入式平台,还能实现高效的信息展示终端。本文围绕这些基础原理,系统梳理了电子墨水屏UI开发中的关键规范,为开发者提供了从渲染管线到交互反馈的完整参考。

weixin_34082854的博客 366

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

【Android实战】Bitmap图片的截屏、模糊处理、传递、使用

项目中遇到了这样一个需求: 当某个条件满足时就截取当前屏幕。并跳转到另外一个页面,同一时候将这个截屏图片作为下一个页面的背景图片,同一时候背景图片须要模糊处理 接下来就一步一步解决这个问题: 1、截取无状态栏的当前屏幕图片。请參考takeScreenShot方法 2、使图片高斯模糊的方法请參考blurBitmap方法       注意:RenderScript是Android在A...

weixin_33781606的博客 304

【Android自定义View】Bitmap的绘制和颜色滤镜

前言 Bitmap在开发中是经常遇到的,因为他用到的地方有很多,比如Android的图片预览,自定义相机,自定义美颜相机,图片滤镜,图像算法。。。。,既然使用场景这么多,今天就先讲一下Android中常用的吧。 今天,我们来说说Bitmap相关的绘制以及颜色滤镜。看看我们是怎样虐狗的哈 看看虐狗前的图原图,是一只可爱的阿拉斯加。 Bitmap 绘制 Bitmap的绘制,主要有以下4个方法,其中2...

hirezy 9516

Android 安卓超级简单 修改图片RGB颜色,实现图片冷暖色变化

超级简单的图片冷暖色、灰度、高亮图片实现效果 第一种实现方式: 只需要传进rgb对应的值,就可以修改图片颜色 public void imagec(int r, int g, int b) { Bitmap bitmap= BitmapFactory.decodeResource(getResources(), R.mipmap.a11); ColorMatrix colorMatrix=new ColorMatrix(new float[]{ .

yuanshiren133的博客 7297

android 图片过滤,android 图片转为bitmap,黑白镜过滤

图片转bitmap1.获取图片资源Bitmap bitmap= BlackWhite(BitmapFactory.decodeResource(getResources(), R.mipmap.test, null));2.sd卡(要获取权限 文件和读写权限)String fileName=Environment.getExternalStorageDirectory().getAbsoluteP...

weixin_39658900的博客 274

Android中如何提取Bitmap位图像素

在Android系统中,假设我们已经取得位图的像素数组pixels。如果要取得相应的透明度、红色分量、绿色分量、蓝色分量,必须通过相应的按位与运算(&)计算得到。 既然要进行按位与运算(按位与运算是双目运算符),就是需要2个运算的数据,一个是像素数组的其中一项,一个是16进制数据。 如果参与按位与运算的16进制数据为:0X00FFFFFF,表示将透明度的数据清零。 如果参与按位与

jys1115的专栏 2189
上一篇: 单位转换
下一篇: 为什么调用 FragmentPagerAdapter.notifyDataSetChanged() 并不能更新其 Fragment?
僤尐僤
博客等级 码龄14年 10粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值