AutoJs学习-高斯模糊
学习 模糊 高斯 AutoJs
2023-09-14 09:04:17 时间
👉关于作者
众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣 !!!
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎私我,交流群让学习不再孤单。
本文约5千字,新手阅读需要7分钟,复习需要2分钟 【收藏随时查阅不再迷路】
👉实践过程
"ui";
//console.show();
ui.layout(
<vertical id="vertical">
<frame>
<text id="text" w="auto" layout_gravity="left"/>
<text id="text1" w="auto" layout_gravity="right"/>
</frame>
<img id="img" w="*" bg="#ffffffff"/>
</vertical>
);
importClass(android.graphics.Paint);
//importClass(android.graphics.Canvas);
importClass(android.graphics.Bitmap);
threads.start(function() {
try {
var path =listpath("/sdcard");
var img = images.read(path);
var bitmap = Bitmap.createBitmap(img.getWidth(), img.getHeight(), Bitmap.Config.ARGB_8888);
var canvas = new Canvas(bitmap);
canvas.drawARGB(255, 0, 0, 0);
var paint = new Paint();
paint.setStrokeWidth(1);
var s = 3;
for (var x = 0; x < img.getWidth(); x++) {
for (var y = 0; y < img.getHeight(); y++) {
var a = 0,
r = 0,
g = 0,
b = 0,
k = 0;
for (var xi = -s; xi < s; xi++) {
for (var yi = -s; yi < s; yi++) {
var jx = x + xi,
jy = y + yi;
if (jx < 0 || jx >= img.getWidth()) {
continue
};
if (jy < 0 || jy >= img.getHeight()) {
continue
};
k++;
var color = images.pixel(img, jx, jy);
//log(color);
a += colors.alpha(color);
r += colors.red(color);
g += colors.green(color);
b += colors.blue(color);
};
};
a = Math.round(a / k);
r = Math.round(r / k);
g = Math.round(g / k);
b = Math.round(b / k);
paint.setARGB(a, r, g, b);
//log(a/k, r/k, g/k, b/k);
canvas.drawPoint(x, y, paint);
ui.run(function() {
ui.text.setText(txt(x, y));
ui.text1.setText(txt(a, r, g, b));
//ui.vertical.setBackgroundDrawable(new android.graphics.drawable.ColorDrawable(android.graphics.Color.argb(a, r, g, b)));
ui.img.setImageBitmap(bitmap);
});
};
};
} catch (e) {
toast(e);
}
});
function txt() {
var T = new Array;
for (var i = 0; i < arguments.length; i++) {
T.push(arguments[i].toString());
};
return T.join(" ");
};
function listpath(Apath, Bpath) {
Bpath = Bpath || "";
var path = files.join(Apath, Bpath);
var a = files.listDir(path, function(name){
return files.isFile(files.join(path,name))||files.isDir(files.join(path,name));
}).sort();
i = dialogs.select(path, a);
if (i + 1) {
path = files.join(path, a[i]);
if (files.isDir(path)) {
return listpath(Apath, files.join(Bpath, a[i]));
} else {
if (dialogs.confirm("确定文件?", a[i])) {
//viewFile(path);
return path;
} else {
return listpath(Apath, Bpath);
}
}
} else {
var ary = Bpath.split("/");
if (ary.length && Bpath.length) {
ary.pop();
return listpath(Apath, ary.join("/"));
}
}
};
👉其他
📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。
温馨提示:点击下方卡片获取更多意想不到的资源。
相关文章
- Opencv学习笔记 - 使用opencvsharp和逻辑回归
- 《Android进阶指北》强势来袭,堪称2022保姆级学习路线
- 数学建模学习(61):双因素方差分析详细讲解与matlab应用
- 数学建模学习(37):模糊综合评价
- 机器学习实践:基于支持向量机算法对鸢尾花进行分类
- 深度学习:Tensorflow实现线性回归梯度下降优化
- 很具体GC学习笔记
- 近段时间学习html和CSS的一些细碎总结
- 学习C++模板---模板类带简单参数,并且添加缺省参数,特例模板
- AI安全初探——利用深度学习检测DNS隐蔽通道
- 抢先一步:如何使用FPGA加速深度学习计算
- libvirt零知识学习2 —— libvirt源码下载
- ACP slave interface 学习