Convert Binary Occupancy Grid to logical or numeric values
13 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
mohammed alany
il 12 Mar 2019
Commentato: mohammed alany
il 14 Mar 2019
i want to perform the code "imcomplement" on Binary Occupancy Grid figure, the erroe message occurs was :
"Error using imcomplement Expected input to be one of these types: logical, numeric Instead its type was robotics.BinaryOccupancyGrid."
if i cant not to convert to this extention, may i perform the code "inflate" on logical or numeric values
0 Commenti
Risposta accettata
Cam Salzberger
il 13 Mar 2019
Hello Mohammed,
You can use the occupancyMatrix method to extract the numeric values of the occupancy grid. Then you can manipulate the matrix how you want. For binary values, ~occGridMatrix would be the same as imcomplement.
As for going the other direction, inflate is similar to imdilate, though the exact algorithm differs.
-Cam
3 Commenti
Cam Salzberger
il 14 Mar 2019
Ah, the occupancyMatrix method was only introduced in R2016b. You could use getOccupancy with the 'grid' argument, simply providing each cell as an input to get an array, then reshape it back into a matrix. Something like:
[I, J] = ndgrid(1:map.GridSize(1), 1:map.GridSize(2));
values = getOccupancy(map, [I(:) J(:)], 'grid');
valueGrid = reshape(values, size(I));
I'm not certain about the reshape being the exact inverse of the (:) indexing, but you can play around with it if necessary.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Block Libraries in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!