decom规则

一、内部类

1、this.this$0.handler.sendEmptyMessage(1);-----------------------------------handler.sendEmptyMessage(1);

this.this$0.movePrevious();-------------------------------------------------------------MyGallery.this.movePrevious();

class MyGallery$a1 extends Handler()------------------------------------------------class a1 extends Handler()


参考:

java内部类                                         http://baike.baidu.com/view/7942850.htm

java this$0                                         http://plkong.iteye.com/blog/1513056

内部类学习(一)                                  http://dev.21tx.com/2007/05/23/10882.html

内部类学习(二)                                   http://dev.21tx.com/2007/05/29/10935.html

领略内部类的“内部”                              http://blog.sina.com.cn/s/blog_4cd5d2bb0100ssdd.html

  分析APK反编译后的代码                 http://blog.youkuaiyun.com/hp_2008/article/details/8626010




------------------------------------------------------------------------------------

java反编译,内部类调用外部类成员总结

很简单的一个测试类如下:


 源码:  
public class testOuter {
private int a;
private int b;

private void fun() {
a += 1;
}

class testInner {
int x = 0;
testInner() {
b = 1;
a = 0;
fun();
}
}


编译生成的Class文件:

class testOuter$testInner {
int x = 0;
testOuter$testInner(testOuter paramtestOuter) {
testOuter.access$002(paramtestOuter, 1);
testOuter.access$102(paramtestOuter, 0);
testOuter.access$200(paramtestOuter);
}
}


可以看出,为了使内部类访问外部类的私有成员,编译器生成了形似 "外部类.access$XYZ"的函数。XYZ为数字。X是按照私有成员在内部类出现的顺序递增的。YZ为02的话,标明是基本变量成员;YZ为00的话标明是对象成员或者函数。
---------------------------------------------------------------------------------------------

There is one more category of compiler-generated members. A private member m of a class C may be used by another class D, if one class encloses the other, or if they are enclosed by a common class. Since the virtual machine does not know about this sort of grouping, the compiler creates a local protocol of access methods in C to allow D to read, write, or call the member m. These methods have names of the form access$0, access$1, etc. They are never public. Access methods are unique in that they may be added to enclosing classes, not just inner classes.


八、jar替换、分析

 http://download.forge.objectweb.org/asm


九、防止反编译

Java混淆器和java混淆编译                                http://hi.baidu.com/zeorliu/item/b2787859addfca08e7c4a55b


### Retinex 图像增强分解方法 #### 理论基础 Retinex理论旨在模拟人类视觉系统的特性,在图像处理领域主要用于解决光照不均匀的问题。通过该算法可以有效地分离出反射分量\( R \),进而提升图像质量并改善视觉效果[^3]。 #### 数学模型 为了更好地理解和实现Retinex算法中的分解过程,通常会将原始输入图像\( S(x,y) \)视为反射率\( R(x,y) \)与光照成分\( L(x,y) \)相乘的结果: \[ S(x, y)=R(x, y)\cdot L(x, y)+\epsilon \] 其中\( \epsilon \)代表噪声项。为了简化计算,一般会在对数空间内操作,即将上述表达式转化为加法形式: \[ log(S(x, y))=log(R(x, y))+log(L(x, y))+log(\epsilon ) \] 这样做的好处是可以利用线性滤波器来近似求解复杂的非线性方程组。 #### SSR(Single Scale Retinex) 对于单尺度Retinex而言,主要采用高斯低通滤波作为路径函数\( G(r,c;\sigma _{d}) \),以此估算局部平均亮度值\( L_{ssr}(x,y) \)[^1]: ```matlab function ssr_img = singleScaleRetinex(img, sigma) % 单尺度retinex算法 img_log = log(double(img) + 1); % 对原图取自然对数 size_img = size(img); for i = 1:size_img(1) for j = 1:size_img(2) window = fspecial('gaussian', round(3*sigma), sigma); l_ssr(i,j,:) = imfilter(img_log(:,:,i,:),window,'replicate'); end end ssr_img = exp(img_log - l_ssr); end ``` 此代码片段展示了如何使用MATLAB编写一个简单的SSR版本。需要注意的是实际应用时可能还需要考虑边界条件等问题。 #### MSR(Multi-Scale Retinex) 多尺度Retinex则进一步改进了这一思路,引入多个不同大小的卷积核来进行多次运算,并最终汇总得到更精确的结果。具体来说就是分别选取几个特定的标准差参数\( {\sigma }_{{d}_{k}} \)(比如98、200、300像素宽度对应的σ值),然后按照权重组合各个层次上的输出形成总的响应矩阵\( MSR \): \[ MSR=\sum w_k\cdot SSR({\sigma}_{{d}_{k}}) \] 这里不再给出完整的Matlab程序,因为涉及到更多细节配置以及性能优化措施。 #### MSRCR(Multi-Scale Retinex with Color Restoration) 带颜色校正机制的MSRCR不仅继承和发展了前两种技术的优点,还特别加入了色彩平衡环节以防止过度饱和现象的发生。整个流程大致如下所示: 1. 计算各通道下的MSR; 2. 应用伽玛矫正因子γ调节整体明暗程度; 3. 加入色度补偿系数α控制RGB三者间比例关系; 4. 输出经过归一化后的最终效果图。 综上所述,无论是哪种具体的变体方案都离不开最根本的思想——通过对数变换把原本难以直接处理的数据映射到易于分析的新维度上去;再借助合适的工具完成目标提取工作即可达到预期目的[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值