Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release v0.27.4-rc1 #1510

Merged
merged 5 commits into from
Apr 4, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name = "IncrementalInference"
uuid = "904591bb-b899-562f-9e6f-b8df64c7d480"
keywords = ["MM-iSAMv2", "Bayes tree", "junction tree", "Bayes network", "variable elimination", "graphical models", "SLAM", "inference", "sum-product", "belief-propagation"]
desc = "Implements the Multimodal-iSAMv2 algorithm."
version = "0.27.3"
version = "0.27.4"

[deps]
ApproxManifoldProducts = "9bbbb610-88a1-53cd-9763-118ce10c1f89"
Expand Down
13 changes: 13 additions & 0 deletions src/ExportAPI.jl
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,19 @@ export
setVariableRefence!,
reshapeVec2Mat


export incrSuffix

export calcPPE, calcVariablePPE
export setPPE!, setVariablePosteriorEstimates!
export getPPEDict
export getPPESuggested, getPPEMean, getPPEMax
export getPPESuggestedAll
export loadDFG
export findVariablesNear, defaultFixedLagOnTree!
export fetchDataJSON


export Position, Position1, Position2, Position3, Position4
export ContinuousScalar, ContinuousEuclid # TODO figure out if this will be deprecated, Caesar.jl #807
export Circular, Circle
Expand Down
12 changes: 1 addition & 11 deletions src/FGOSUtils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,8 @@
# IIF methods should direclty detect extended types from user import
# of convert in their namespace

import DistributedFactorGraphs: AbstractPointParametricEst, loadDFG
import DistributedFactorGraphs: getFactorType

export incrSuffix
export calcPPE, calcVariablePPE
export setPPE!, setVariablePosteriorEstimates!
export getPPESuggestedAll, findVariablesNear, defaultFixedLagOnTree!
export loadDFG
export fetchDataJSON



# FIXME, upgrade to AMP instead
KDE.getPoints(dfg::AbstractDFG, lbl::Symbol) = getBelief(dfg, lbl) |> getPoints

clampStringLength(st::AbstractString, len::Int=5) = st[1:minimum([len; length(st)])]
Expand Down
10 changes: 8 additions & 2 deletions src/Factors/Mixture.jl
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,19 @@ A `Mixture` object for use with either a `<: AbstractPrior` or `<: AbstractRelat
Notes
- The internal data representation is a `::NamedTuple`, which allows total type-stability for all component types.
- Various construction helpers can accept a variety of inputs, including `<: AbstractArray` and `Tuple`.
- `N` is the number of components used to make the mixture, so two bumps from two Normal components means `N=2`.

DevNotes
- FIXME swap API order so Mixture of distibutions works like a distribtion, see Caesar.jl #808
- Should not have field mechanics.
- TODO on sampling see #1099 and #1094 and #1069


Example
```juila
# prior factor
msp = Mixture(PriorSphere1,
[model=Normal(0,0.1), Uniform(-pi/1,pi/2)],
msp = Mixture(Prior,
[Normal(0,0.1), Uniform(-pi/1,pi/2)],
[0.5;0.5])

addFactor!(fg, [:head], msp, tags=[:MAGNETOMETER;])
Expand All @@ -34,9 +38,11 @@ addFactor!(fg, [:x0;:x1], mlr)
```
"""
struct Mixture{N, F<:AbstractFactor, S, T<:Tuple} <: AbstractFactor
""" factor mechanics """
mechanics::F
components::NamedTuple{S,T}
diversity::Distributions.Categorical
""" dimension of factor, so range measurement would be dims=1 """
dims::Int
labels::Vector{Int}
end
Expand Down
3 changes: 2 additions & 1 deletion src/IncrementalInference.jl
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,8 @@ import DistributedFactorGraphs: getPPE, getPPEDict
import DistributedFactorGraphs: getFactorOperationalMemoryType
import DistributedFactorGraphs: getPoint, getCoordinates
import DistributedFactorGraphs: getVariableType

import DistributedFactorGraphs: AbstractPointParametricEst, loadDFG
import DistributedFactorGraphs: getFactorType

# will be deprecated in IIF
import DistributedFactorGraphs: isSolvable
Expand Down