Skip to content

Commit a1c2c00

Browse files
committed
Usage of the new macro concept
1 parent 234d962 commit a1c2c00

File tree

1 file changed

+41
-55
lines changed

1 file changed

+41
-55
lines changed

12_Datenfusion.md

Lines changed: 41 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,21 @@ script: https://cdn.jsdelivr.net/chartist.js/latest/chartist.min.js
1818
1919
link: https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.0/animate.min.css
2020
21-
@eval: @Rextester.eval(@uid,@Python, , , ,
22-
```
23-
var string = data.Result.replace(/\n/g, ' ');
24-
var lines = string.match(/(?<=\[).+?(?=\])/g);
25-
var outcome = [];
26-
for (var i=0; i<lines.length; i++){
27-
outcome[i] = lines[i].split(' ').map(function(item) {
28-
return parseFloat(item);
29-
});
30-
}
31-
@input(1);
32-
Plotly.newPlot(span_id, plot, layout);
33-
console.log("Aus Maus");```
34-
)
21+
@eval
22+
@Rextester._eval_(@uid, @Python, , , ,```
23+
var lines = data.Result.replace(/\n/g, ' ')
24+
.replace(/\s{2,}/g, ' ')
25+
.match(/(?<=\[).+?(?=\])/g);
26+
var outcome = [];
27+
for (var i=0; i<lines.length; i++){
28+
outcome[i] = lines[i].split(' ').map(function(item) {
29+
return parseFloat(item);
30+
});
31+
}
32+
@input(1);
33+
Plotly.newPlot(span_id, plot, layout);
34+
console.log("Aus Maus");
35+
```)
3536
@end
3637
-->
3738

@@ -330,7 +331,7 @@ print(belief)
330331
var plot = [
331332
{
332333
x: d3.range(0, 10),
333-
y: outcome,
334+
y: outcome[0],
334335
type: 'bar',
335336
name: 'Orange signs measurements',
336337
}
@@ -381,7 +382,7 @@ print(posteriori)
381382
var plot = [
382383
{
383384
x: d3.range(0, 10),
384-
y: outcome,
385+
y: outcome[0],
385386
type: 'bar',
386387
name: 'Posteriori probabilities',
387388
}
@@ -438,7 +439,7 @@ print(p_1)
438439
var plot = [
439440
{
440441
x: d3.range(0, 10),
441-
y: outcome,
442+
y: outcome[0],
442443
type: 'bar',
443444
name: 'Probability of segment [1]'
444445
}
@@ -492,13 +493,13 @@ print(perfect_predict(belief, 1))
492493
var plot = [
493494
{
494495
x: d3.range(0, 10),
495-
y: outcome_0,
496+
y: outcome[0],
496497
type: 'bar',
497498
name: 'Before prediction'
498499
},
499500
{
500501
x: d3.range(0, 10),
501-
y: outcome_1,
502+
y: outcome[1],
502503
type: 'bar',
503504
name: 'After prediction'
504505
},
@@ -525,7 +526,7 @@ var layout = {
525526
tracetoggle: false
526527
};
527528
```
528-
@eval2
529+
@eval
529530

530531
Welche Probleme sehen Sie?
531532

@@ -555,13 +556,13 @@ print( predict_move(belief, 1, .1, .7, .2))
555556
var plot = [
556557
{
557558
x: d3.range(0, 10),
558-
y: outcome_0,
559+
y: outcome[0],
559560
type: 'bar',
560561
name: 'Before prediction'
561562
},
562563
{
563564
x: d3.range(0, 10),
564-
y: outcome_1,
565+
y: outcome[1],
565566
type: 'bar',
566567
name: 'After prediction'
567568
},
@@ -588,7 +589,7 @@ var layout = {
588589
tracetoggle: false
589590
};
590591
```
591-
@eval2
592+
@eval
592593

593594
Was aber geschieht, wenn wir von einem unsicheren priori Wissen ausgehen?
594595

@@ -649,44 +650,27 @@ print(belief)
649650
kernel = [.1, 0.7, 0.2]
650651
prior = ndimage.convolve(np.roll(belief, len(kernel) / 2), kernel, mode='wrap')
651652
print(prior)
652-
#belief = prior # Multiple movements
653-
#prior = ndimage.convolve(np.roll(belief, len(kernel) / 2), kernel, mode='wrap')
654-
#print(prior)
653+
belief = prior # Multiple movements
654+
prior = ndimage.convolve(np.roll(belief, len(kernel) / 2), kernel, mode='wrap')
655+
print(prior)
655656
```
656657
```js -Visualization
657-
var lines = data.Result.split('\n');
658-
var line_0 = lines[0].slice(1, lines[0].length-1).replace( /\s\s+/g, ' ' );
659-
var line_1 = lines[1].slice(1, lines[1].length-1).replace( /\s\s+/g, ' ' );
660-
var line_2 = lines[2].slice(1, lines[2].length-1).replace( /\s\s+/g, ' ' );
661-
662-
var outcome_0 = line_0.split(' ').map(function(item) {
663-
return parseFloat(item);
664-
});
665-
666-
var outcome_1 = line_1.split(' ').map(function(item) {
667-
return parseFloat(item);
668-
});
669-
670-
var outcome_2 = line_2.split(' ').map(function(item) {
671-
return parseFloat(item);
672-
});
673-
674658
var plot = [
675659
{
676660
x: d3.range(0, 10),
677-
y: outcome_0,
661+
y: outcome[0],
678662
type: 'bar',
679663
name: 'Before movement'
680664
},
681665
{
682666
x: d3.range(0, 10),
683-
y: outcome_1,
667+
y: outcome[1],
684668
type: 'bar',
685669
name: 'After movement'
686670
},
687671
{
688672
x: d3.range(0, 10),
689-
y: outcome_2,
673+
y: outcome[2],
690674
type: 'bar',
691675
name: 'After second movement'
692676
},
@@ -712,12 +696,8 @@ var layout = {
712696
legend: { x: 1, xanchor: 'right', y: 1},
713697
tracetoggle: false
714698
};
715-
716-
Plotly.newPlot('Diagram6', plot, layout);
717-
console.log("Aus Maus")
718-
```@Rextester._eval_(@uid, @Python,`@0`,`@1`,` `,`@input(1)`)
719-
720-
<div id="Diagram6"></div>
699+
```
700+
@eval
721701

722702
Mit jedem Prädiktionsschritt fächert die Breite der Unsicherheit entsprechend auf.
723703

@@ -750,8 +730,6 @@ style="width: 100%; min-width: 380px; max-width: 720px; display: block; margin-l
750730

751731
Das folgende Codefragment bildet zwei Iterationen für unser Beispiel ab. Im ersten Durchlauf ändert die Prediktionsphase den Intertialen Wissenstand nicht. Die Faltung des Kernels ändert die Aufenthaltwahrscheinlichkeit nicht. Eine Präzisierung erfährt diese mit der ersten Messung durch den Schildersensor.
752732

753-
# asdfasöl
754-
755733
```python BayesFilter.py
756734
import numpy as np
757735
from scipy import ndimage
@@ -778,7 +756,15 @@ posteriori = posteriori * belief / sum(posteriori * belief )
778756
print(posteriori)
779757
```
780758
```js -Visualization
781-
759+
var lines = data.Result.replace(/\n/g, ' ')
760+
.replace(/\s{2,}/g, ' ')
761+
.match(/(?<=\[).+?(?=\])/g);
762+
var outcome = [];
763+
for (var i=0; i<lines.length; i++){
764+
outcome[i] = lines[i].split(' ').map(function(item) {
765+
return parseFloat(item);
766+
});
767+
}
782768

783769
var plot1 = [
784770
{

0 commit comments

Comments
 (0)