OMERO ROIs improvements : filtering visible and adding all#641
OMERO ROIs improvements : filtering visible and adding all#641Rdornier wants to merge 10 commits intoome:masterfrom
Conversation
|
I was wondering if having also a field to filter ROIs by comment can be beneficial. I guess yes. Users could enter text and only ROIs which contain the specified text will be displayed. In that scenario, The scenario I have in mind is coming from QuPath. Users create annotations of different classes and then may want to get only those from specific class. I'll have a look on that once the Label on ROIs PR is merged, as it requires to get access to text attribute. |
|
@Rdornier Thank you. With how many ROIs have you tested this please ? The reason I am asking is that we have already pondered such feature and went back to the drawing board because of performance issues. |
|
Hi @pwalczysko Thanks for your feedback. I wsn't aware that this was already tested. I was testing with 10-20 ROIs and it worked fine. I've given a try with 280 and now, I begin to see a bit of lagging when adding them all (15s). Also, after saving them, when changing dimensions of the panel, the responsivity is also not the best. One thing I could add it to enable I really would like to add this feature to add all ROIs at once because this is a scenario that is asking more and more often. Users are using QuPath and would like to display annotations, of a with a certain name, in their figure. That's why I also would like to implement the text filter. |
|
#430 was my attempt at this a while back, and #335 was the original issue. I think the performance issues in both cases come from testing the intersection with the viewport by creating each shape in shapeEditor first. We probably need to figure out a way to do a rough filter by shape coordinates. It might be hard to know if a line/arrow with the start and end points outside of the viewport actually intersects with the viewport, or if an ellipse with a particular rotation might intersect or not. But, we should still be able to rule out many shapes. Then let's set a limit on the number we allow users to add, e.g. test with 100 or 200. Filtering by text would be nice too. |
…into filter-rois
|
Hi Rémy, This will be a bit more work (maybe too much?), because currently we use the JSON API endpoint. So we'd need to reuse some of that code in figure and add the python based filtering or (preferably) add region-based filtering to the JSON API. I imagine if the URL included |
|
Need to discuss a bit with @jburel to decide the best approach here... |
I agree, yes. That would be nice. What about the filtering by ROI comments ? That's something I also would like implement because it can be helpful. I guess this filtering will also be part of the sql query, right ? |
|
I've removed the |
Fixes #628
When clicking on
Load ROIs, only ROIs that can be added (i.e. intersecting the viewport) are displayed in the list. This makes the interface more clear and when the mouse is passed over the ROIs, they can all be seen. The number of available ROIs vs total ROIs is also displayed.Additionnally, a button
Add allis added to insert all visible ROIs at once, to not have to add them all manually.