更新格式

This commit is contained in:
2025-02-23 16:04:16 +08:00
parent f1fdc98268
commit 26244880ee
5 changed files with 40 additions and 16 deletions
+1
View File
@@ -25,6 +25,7 @@ table.gridtable td {
table.invisibletable {
border: 0px;
display: table;
}
table.invisibletable tr {
+10 -9
View File
@@ -58,21 +58,22 @@ YCbCr模型广泛应用在图片和视频的压缩传输中,比如你可以留
这是有道理的,还记得我们在文章开始时提到的有损压缩的基本原理吗?有损压缩首先要做的事情就是“把重要的信息和不重要的信息分开”,YCbCr恰好能做到这一点。对于人眼来说,图像中明暗的变化更容易被感知到,这是由于人眼的构造引起的。视网膜上有两种感光细胞,能够感知亮度变化的视杆细胞,以及能够感知颜色的视锥细胞,由于视杆细胞在数量上远大于视锥细胞,所以我们更容易感知到明暗细节。比如说下面这张图
<div align="center">
<table class="invisibletable" style="width:620px;">
<table class="invisibletable">
<tbody>
<tr>
<td colspan="5">
<center>
<img src="/images/2014/08/jpeg_15.jpg" >
</center>
![](/images/2014/08/jpeg_15.jpg)
</td>
</tr>
<tr>
<td><figure style="width: 200px; margin: 0px;"><img src="/images/2014/08/jpeg_16.png" ><figcaption >Y</figcaption></figure></td>
<td style="width: 10px;"></td>
<td><figure style="width: 200px; margin: 0px;"><img src="/images/2014/08/jpeg_17.png" ><figcaption >Cb</figcaption></figure></td>
<td style="width: 10px;"></td>
<td><figure style="width: 200px; margin: 0px;"><img src="/images/2014/08/jpeg_18.png" ><figcaption >Cr</figcaption></figure></td>
<td>
<figure style="margin: 5px;"><img src="/images/2014/08/jpeg_16.png" ><figcaption >Y</figcaption></figure></td>
<td ></td>
<td><figure style="margin: 5px;"><img src="/images/2014/08/jpeg_17.png" ><figcaption >Cb</figcaption></figure></td>
<td ></td>
<td><figure style="margin: 5px;"><img src="/images/2014/08/jpeg_18.png" ><figcaption >Cr</figcaption></figure></td>
</tr>
</tbody>
</table>
+2 -1
View File
@@ -65,7 +65,8 @@ $$
奥妙之处在于,经过DCT,数据中隐藏的规律被发掘了出来,杂乱的数据被转换成几个工整变化的数据。DCT转换后的数组中第一个是一个直线数据,因此又被称为“直流数据”,简称DC,后面的数据被称为“交流数据”,简称AC,这个称呼起源于信号分析中的术语。
在JPEG压缩过程中,经过颜色空间的转换,每一个8X8的图像块,在数据上表现为3个8X8的矩阵,紧接着我们对这三个矩阵做一个二维的DCT转换,二维的DCT转换公式为
$$\small{\begin{aligned}
F(u,v)&=\alpha(u)\cdot\alpha(v)\cdot \sum_{x=0}^{7}\sum_{y=0}^{7}f(x,y)\cos\left(\frac{2x+1}{16}u\pi\right)\cos\left(\frac{2y+1}{16}v\pi\right)\quad u,v=0,1,2,\ldots,7\\
F(u,v)&=\alpha(u)\cdot\alpha(v)\cdot \sum_{x=0}^{7}\sum_{y=0}^{7}f(x,y)\cos\left(\frac{2x+1}{16}u\pi\right)\cos\left(\frac{2y+1}{16}v\pi\right)\\
u,v &=0,1,2,\ldots,7\\
\alpha(u)&=\begin{cases}1/\sqrt{8}, & \text{when u}=0\\
1/2, & \text{when u}\neq 0\end{cases}
\end{aligned}}\tag{2.4}
+11 -3
View File
@@ -11,13 +11,21 @@ SPH([Smoothed Particle Hydrodynamics](http://en.wikipedia.org/wiki/Smoothed_Part
SPH算法是典型的拉格朗日视角,它的基本原理就是通过粒子模拟流体的运动规律,然后再转换成网格进行流体渲染。
<div align="center">
<table class="invisibletable" style="width:560px;">
<table class="invisibletable">
<tbody>
<tr valign="center">
<td ><img src="/images/2014/08/sph_2.jpg" ></td>
<td > -&gt; </td>
<td >
$\rightarrow$
</td>
<td ><img src="/images/2014/08/sph_3.jpg" ></td>
<td > -&gt;</td>
<td >
$\rightarrow$
</td>
<td ><img src="/images/2014/08/sph_4.jpg" ></td>
</tr>
</tbody>
+16 -3
View File
@@ -3,14 +3,27 @@ title: "SPH算法简介(三): 光滑核函数"
tags: 数学 流体 程序 算法
---
和其他流体力学中的数学方法类似,SPH算法同样涉及到“光滑核”的概念,可以这样理解这个概念,粒子的属性都会“扩散”到周围,并且随着距离的增加影响逐渐变小,这种随着距离而衰减的函数被称为“光滑核”函数,最大影响半径为“光滑核半径”。
<table class="invisibletable" align="center">
<div align="center">
<table class="invisibletable">
<tbody>
<tr>
<td width="50%" ><img src="/images/2014/08/sph_21.gif"></td>
<td width="50%" ><img src="/images/2014/08/sph_22.gif"><p>光滑核函数一般具有的形态</p></td>
<td>
![](/images/2014/08/sph_21.gif )
</td>
<td>
![](/images/2014/08/sph_22.gif "光滑核函数一般具有的形态")
</td>
</tr>
</tbody>
</table>
</div>
反过来不难理解,尽管我们将流体视为一个个分散的粒子,但流体毕竟是连续充满整个空间的,流体中每个位置参与运算的值都是由周围一组粒子累加起来的。
![](/images/2014/08/sph_26.gif)