This commit is contained in:
Marius Drechsler 2024-07-21 17:19:09 +02:00
parent b73f8e6e63
commit bec0722111
6 changed files with 33 additions and 22 deletions

View file

@ -230,14 +230,31 @@ As for metric 2, we can apply the same strategy and find the points for the vert
Analytically, the offset we are applying to $cal(E)(2, 2, tilde(x))$ can be defined as
$ phi = lr(frac(1, 2^n dot s)mid(|))_(n=2, s=2) = 1 / 8 $<eq:offset>
$ phi = lr(frac(1, 2^n dot s dot 2)mid(|))_(n=2, s=2) = 1 / 16 $<eq:offset>
This is also shown in @fig:smhd_2_2_reconstruction, as our quantizer curve is moved $1/8$ to the left and the right.
This is also shown in @fig:smhd_2_2_reconstruction, as our quantizer curve is moved $1/16$ to the left and the right.
==== Odd number of metrics
If a odd number of metrics is given, the offset can still be calculated using @eq:offset. Additionally, we will keep the original quantizer used during enrollment.
If a odd number of metrics is given, the offset can still be calculated using @eq:offset. Additionally, we will keep the original quantizer used during enrollment (@fig:smhd_3_2_reconstruction).
Comparing @fig:smhd_2_2_reconstruction, @fig:smhd_3_2_reconstruction and their respective values of @eq:offset, we can observe, that the offset $phi$ gets smaller the more metrics we use.
]
#figure(
table(
columns: (11),
inset: 7pt,
align: center + horizon,
[$m$],
[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],
[$phi$],[$1/8$],table.cell(fill: gray)[$1/16$], [$1/24$], table.cell(fill:gray)[$1/32$], [$1/40$], table.cell(fill:gray)[$1/48$], [$1/56$], table.cell(fill:gray)[$1/64$], [$1/72$], table.cell(fill:gray)[$1/80$]
),
caption: [Offset values for 2-bit configurations]
)<tab:offsets>
Before we can go deeper into the properties of the offset value $phi$, we will introduce a way to programmatically find the offset values for all s quantizers.
#figure(
kind: "algorithm",
supplement: [Algorithm],

View file

@ -9,14 +9,14 @@
y-label: $cal(Q)(2, 2, tilde(x))$,
x-label: $tilde(x)$,
y-tick-step: none,
y-ticks: ((3/16, [00]), (7/16, [01]), (11/16, [10]), (15/16, [11])),
y-ticks: ((1/4, [00]), (2/4, [01]), (3/4, [10]), (4/4, [11])),
axis-style: "left",
x-min: 0,
x-max: 1,
y-min: 0,
y-max: 1,{
plot.add(((0,3/16), (3/16,3/16), (7/16,7/16), (11/16,11/16), (15/16, 15/16), (15/16, 3/16), (1, 3/16)), line: "vh", style: line_style)
plot.add-hline(3/16, 7/16, 11/16, 15/16, style: dashed)
plot.add(((0,1/4), (3/16,1/4), (7/16,2/4), (11/16,3/4), (15/16, 4/4), (15/16, 1/4), (1, 1/4)), line: "vh", style: line_style)
plot.add-hline(1/4, 2/4, 3/4, 1, style: dashed)
plot.add-vline(3/16, 7/16, 11/16, 15/16, style: dashed)
})
})

View file

@ -18,8 +18,8 @@
x-max: 1,
y-min: 0,
y-max: 1,{
plot.add(((0,1/4), (1/8,1/4), (3/8,2/4), (5/8,3/4), (7/8, 1), (7/8, 1/4), (1, 1/4)), line: "vh", style: line_style, label: [Metric 1])
plot.add(((0, 1), (1/8, 1), (1/8, 1/4), (3/8, 1/4), (5/8, 2/4), (7/8, 3/4), (7/8, 1), (1, 1)),line: "vh", style: line_style2, label: [Metric 2])
plot.add(((0,1/4), (3/16,1/4), (7/16,2/4), (11/16,3/4), (15/16, 1), (15/16, 1/4), (1, 1/4)), line: "vh", style: line_style, label: [Metric 1])
plot.add(((0, 1), (1/16, 1), (1/16, 1/4), (5/16, 1/4), (9/16, 2/4), (13/16, 3/4), (13/16, 1), (1, 1)),line: "vh", style: line_style2, label: [Metric 2])
plot.add-hline(1/4, 2/4, 3/4, 1, style: dashed)
plot.add-vline(1/4, 2/4, 3/4, 1, style: dashed)
})

View file

@ -19,9 +19,9 @@
x-max: 1,
y-min: 0,
y-max: 1,{
plot.add(((0, 1/4), (2/12, 1/4), (5/12, 2/4), (8/12, 3/4), (11/12, 1), (11/12, 1/4), (1, 1/4)),line: "vh", style: line_style, label: [Metric 1])
plot.add(((0, 1/4), (5/24, 1/4), (11/24, 2/4), (17/24, 3/4), (23/24, 1), (23/24, 1/4), (1, 1/4)),line: "vh", style: line_style, label: [Metric 1])
plot.add(((0,1/4), (1/4,1/4), (2/4,2/4), (3/4,3/4), (4/4, 4/4)), line: "vh", style: line_style2, label: [Metric 2])
plot.add(((0, 1),(1/12, 1), (1/12, 1/4), (4/12, 1/4), (4/12, 2/4), (7/12, 3/4), (10/12, 1), (1, 1)), line: "hv", style: line_style3, label: [Metric 3])
plot.add(((0, 1),(1/24, 1), (1/24, 1/4), (7/24, 1/4), (7/24, 2/4), (13/24, 3/4), (19/24, 1), (1, 1)), line: "hv", style: line_style3, label: [Metric 3])
plot.add-hline(1/4, 2/4, 3/4, 1, style: dashed)
plot.add-vline(1/4, 2/4, 3/4, 1, style: dashed)
})

BIN
main.pdf

Binary file not shown.

View file

@ -1,16 +1,10 @@
#import "@preview/lovelace:0.3.0": *
#pseudocode-list(booktabs: true, numbered-title: [My cool algorithm])[
+ do something
+ do something else
+ *while* still something to do
+ do even more
+ *if* not done yet *then*
+ wait a bit
+ resume working
+ *else*
+ go home
+ *end*
+ *end*
#pseudocode-list(booktabs: true, numbered-title: [Find quantizer offsets])[
+ $p$: initial offset value
+ $a$: amount of offsets
+ *while* $(i = 1) <= a$:
+ *return* $i dot p$
+ *end*
]