新增 images自适应二值化
This commit is contained in:
@@ -1,14 +1,14 @@
|
||||
"ui";
|
||||
|
||||
var url = "https://www.autojs.org/assets/uploads/profile/3-profileavatar.png";
|
||||
var url = "https://www.autojs.org/assets/uploads/files/1540386817060-918021-20160416200702191-185324559.jpg";
|
||||
var logo = null;
|
||||
var currentImg = null;
|
||||
|
||||
ui.layout(
|
||||
<vertical>
|
||||
<img id="img" w="150" h="150" url="{{url}}" />
|
||||
<img id="img" w="250" h="250" url="{{url}}" />
|
||||
<button id="grayscale" text="灰度化" />
|
||||
<button id="binary" text="二值化" />
|
||||
<button id="adaptiveBinary" text="自适应二值化" />
|
||||
<button id="hsv" text="RGB转HSV" />
|
||||
<button id="blur" text="模糊" />
|
||||
<button id="medianBlur" text="中值滤波" />
|
||||
@@ -19,14 +19,7 @@ ui.layout(
|
||||
//把一张图片设置到图片控件中
|
||||
function setImage(img) {
|
||||
ui.run(() => {
|
||||
var curImg = currentImg;
|
||||
if(oldImg != null){
|
||||
ui.post(()=>{
|
||||
oldImg.recycle();
|
||||
});
|
||||
}
|
||||
ui.img.setImageBitmap(img.bitmap);
|
||||
currentImg = img;
|
||||
});
|
||||
}
|
||||
|
||||
@@ -57,8 +50,21 @@ ui.grayscale.on("click", () => {
|
||||
|
||||
ui.binary.on("click", () => {
|
||||
processImg(img => {
|
||||
var g = images.grayscale(img);
|
||||
//二值化,取灰度为30到200之间的图片
|
||||
return images.threshold(images.grayscale(img), 100, 200);
|
||||
var result = images.threshold(g, 100, 200);
|
||||
g.recycle();
|
||||
return result;
|
||||
});
|
||||
});
|
||||
|
||||
ui.adaptiveBinary.on("click", () => {
|
||||
processImg(img => {
|
||||
var g = images.grayscale(img);
|
||||
//自适应二值化,最大值为200,块大小为25
|
||||
var result = images.adaptiveThreshold(g, 200, "MEAN_C", "BINARY", 25, 10);
|
||||
g.recycle();
|
||||
return result;
|
||||
});
|
||||
});
|
||||
|
||||
@@ -82,6 +88,7 @@ ui.medianBlur.on("click", () => {
|
||||
return images.medianBlur(img, 5);
|
||||
});
|
||||
});
|
||||
|
||||
ui.gaussianBlur.on("click", () => {
|
||||
processImg(img => {
|
||||
//高斯模糊
|
||||
|
||||
Reference in New Issue
Block a user