Comments (4)
Weird!
I don't think it'll be because of the 2.2.0 update. Nothing with timeline processing has changed recently. I think you'll be seeing an old bug, but for the first time.
From the video, my hunch is that TimelineProcessor is ... well, if I had a good guess at what it's doing, I'd have fixed it already 😏 But the way it reassigns the samples back to the path in visible steps (rather than as a single action) suggests that it's the result of visit/path edge cleansing.
But it doesn't really make sense in that context, as it's paths aligned with paths, rather than paths with visits. So I'm struggling to see the cause there. Usually you'd only see those visible steps of reverting when it's a change on a visit/path edge.
You could try "confirming" one of the other segments first, ie tapping on one of the walking segments and reassigning it to walking, to see if that gets around it. But that wouldn't explain why it's happening.
There's something mysterious going on there. The processing engine looks like it knows something we don't, so it thinks it's doing the right thing. But from where I'm sitting, it looks like it's quite mistaken.
from locokit.
Trying to split by clicking 'walking' (in the case of this video) doesn't do anything different.
One experiment I tried, was changing 'train' to different type I haven't used before - for example 'boat' - it was successful! But changing back to train/car caused the same as in the video. I had a few same examples, each one behaved the same.
I'll check in the free time if there is something unusual in moves json day files, but I don't think that's the case
from locokit.
Wow. If it acted differently when assigned to boat, then ... I'm very confused. The assigned type shouldn't make any difference, as long as it's not the same as the type as the item it's being split out from.
The processing engine always reprocesses after any manual change, thus reapplying it's own rules. It's not allowed to override our manual ActivityType and Place assignments, but it will reassert control over TimelineItem boundaries and sample/segment ownership. So when an ItemSegment is split out, the processing engine might decide that the new arrangement isn't workable, and either partially of fully merge things back together again.
But in the case in your video... I just can't see how it would believe that's the right thing to do. It doesn't fit with any of the rules. Either there's something unacceptably wrong with the data that we're not seeing, or there's a weird bug / logic fail in the processing engine rules. The video really doesn't show any hints of problems with the data, so it must be a processing engine rule failure somehow. But... how? Heh. Perplexing.
from locokit.
For a path-path merge, I'd normally expect the answer to be in here:
https://github.com/sobri909/LocoKit/blob/develop/LocoKit/Base/Timelines/MergeScores.swift#L114-L150
But in this case none of those rules look like they could possibly have been triggered. And the fact that the merge happens in stages, rather than a single act, means that it must surely be a visit edge cleanse. So maybe the answer lies in a visit item on one of the ends of the resulting mega path. Something fishy going on in the visit's data, perhaps.
from locokit.
Related Issues (20)
- Question about deep sleeping HOT 4
- Can't build develop HOT 6
- Xcode 11, Swift 5.1 HOT 2
- The necessary unit tests should be created HOT 5
- Couldn't build LocoKit Develop branch with Xcode 11.2 HOT 1
- Couldn't build LocoKit Develop branch with Xcode 11.3 HOT 1
- Unable to build in Swift 5 HOT 1
- Battery usage optimization HOT 1
- Is TimelineManager still available? HOT 5
- LocoKit won't build on Apple Silicon Macs HOT 6
- LocoKit SPM resolve warning HOT 2
- ClassifierResults only returns one value: Car HOT 2
- Getting Only stationary activityType from most recent TimelineItem HOT 3
- Deleting TimelineItems HOT 5
- Xcode 13 / Swift 5.5 compatible LocoKitCore HOT 4
- Question for Histogram.probabilityFor HOT 2
- Latest 3.9.1 with iOS 16.4.1 extreme battery drain HOT 4
- Xcode 14.1 Simulator don't build
- Machine Learning Classifiers HOT 1
- The positioning will be erratic at night HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from locokit.