How to create own dataset for Mask RCNN? - dataset

I have two folders of images, one includes images and another includes bitmaps as annotations.How can I prepare them as dataset for use in Mask RCNN?

For Mask RCNN you need to directly annotate the images so that it could be lablled also in a specific class. Use tools such as VGG Annotator for this purpose. Then you have to customly edit the .py file for your requiremtns and run it, here you will be the directory of these images along with the annotations so that it can recognise what part of the image is representing which class. Later you need to train it these using a pretrained weight file of COCO dataset. This will generate your custom weight file. THis custom weight is used for testing.
Refer these for more insight
https://github.com/gabrielgarza/Mask_RCNN
https://github.com/d-smit/kangaroo-detection-mask-rcnn
https://github.com/thomasjvarghese799/Mask-RCNN-on-Rick-Morty

Related

How to download images and bounding boxes from imageNet such that they have matching names?

I am doing object detection for a specific class, say, chairs .
I want to download images of chairs from imageNet. I also want to download the annotation xml files (bounding boxes) from imageNet.
Both these things are provided on imageNet and I have successfully been able to download them using a tool called ImageNet_Utils
https://github.com/tzutalin/ImageNet_Utils
But the downloaded images and bounding boxes don't have matching names. So it is impossible to tell which xml file is for which image.
How do I download images and bounding boxes from imageNet such that corresponding image and annotation xml files have matching names?
The download image URLs page says
The URLs are listed in a single txt file, where each line contains an
image ID and the original URL
Unfortunately, as of 2020-03-06, all the URL mapping files link to a Oops! The URL is not valid page. However, can however get mappings for each node individually. They are available by wnid: http://www.image-net.org/api/text/imagenet.synset.geturls.getmapping?wnid=n03273913
A bounding box annotation file will contain this element.
<filename>n03273913_16800</filename>
The n03273913 is the synset id and the 16800 is the image id. In the synset mapping file you'll find the line
n03273913_16800 http://farm1.static.flickr.com/186/425238103_8fe80b37de.jpg
You can download the image from that location.
There's a c++ library known as dlib. You can pass your downloaded images from dlib, it has GUI support for drawing blocks in images and save them in vector formats in an XML file. You can refer here for the documentation

SSRS Data Driven Subscription that customizes DeviceInfo settings like PageWidth, PageHeight?

I want to set up data driven subscriptions to mass output png files. The problem is that adding a new Extension for png in rsreportserver.config under Configurations/Extensions/Render only gives one fixed size of png file.
Report A really ought to output a 6in x 3in png file and report B ought to output a 6in x 4in png file.
Yes, I could create multiple entries in rsreportserver.config but this is confusing for end users as they show up on all users' export dropdowns needlessly.
I proposed doing the mass image generation with an external program that generates a custom url for each png (DeviceInfo settings can be part of the url) and uses WebClient.DownloadFile() in a loop, but my supervisor is currently really locked into the idea of data driven subscriptions for whatever reason.
Per #iamdave's suggestion, just setting the overarching page dimensions in report designer does give a suitably sized png file via data driven subscription without having to hardcode png dimensions in rsreportserver.config.
The reason I didn't initially notice this was the reports in question were graphs that were only ever used as subreports on an encompassing megareport and had never really been run as individual standalone reports. When used as a subreport, page dimensions never came into play, so they were left at the default 8.5x11.

Handling filetypes that contain multiple files?

Some filetypes in Visual Studio includes more then one file, for example resx and winform files. So If I need to add existing filetyp of this type I always end upp with multiple files in solution explorer? Are thay not supose to be shown as one file based on there name?
BestRegards
So If I need to add existing filetyp of this type I always end upp
with multiple files in solution explorer?
Multiple file is the part of ProjectItem template. If you add WinFor you will always get several files.
If you don't want to use such template you can create your own template from code created ones with File->Export Template wizard.
To group files in solution explorer read this post

media files converter plugin/component in CakePHP

I am trying to develop a plugin/component that can change the media file format from one to another. Specifically, I need it to convert the "tiff" file to array/single copy of "jpg" image file.
Kindly guide, how I can implement it or is there any kind of tutorial link from where either I can download it or take some help to develop it. Thanks in advance.
We did this in our CMS (built on CakePHP 1.2; sorry if there are any significant discrepancies I'm not aware of) using a behaviour. That makes the controller logic very easy (in fact we use a baked controller without any modification at all).
Unfortunately TIFF isn't a supported file format in GD (the default image manipulation library in PHP). You'll need to use ImageMagick or an equivalent tool to do the actual conversion itself, but the logic for implementing it in your CakePHP project won't be any different to what I describe here.
The behaviour (in our case) was used to generate images as thumbnails as well as page resolution and to convert the uploaded file format into JPEG.
In its beforeSave() method it checked that data was specified (and that there was no error), and then pulled the tmp_name value from the posted data (and removed the posted data object).
In its afterSave() method, it actually performed the image conversion task itself (putting the generated images in the expected location on disk), then updated any foreign keys on extended models with the uploaded image's ID. We do this in the afterSave() operation so we have a database ID to use to name the files on disk.
In its afterDelete() method we unlink the files on disk.
Using the behaviour in the model is as simple as telling the model (where ContentImage is the name of the behaviour):
var $actsAs = array('ContentImage');
Although we also use the model to define the output directory since we had a few models that implemented the behaviour, and it felt like the right thing to do, e.g. in the model:
function getThumbnailDir() {
return WWW_ROOT.'img'.DS.'upload'.DS.'thumb';
}
and in the behaviour itself the output path becomes:
$Model->getThumbnailDir().DS.$Model->id.'.jpg'

Is there a way to organize a icon collection to allow for easy searching?

Is there any way of organizing a icon collection so that it easier to find needed icons?
For example:
the program needs a save icon
there are 5 icons collections on your HD that have a save icon and there are 5 more collections that don't have a save icon (but you don't know that)
do you browse through each icon collection?
run a search (assumes files are named consistently)?
Would it be ideal to have some sort of organized directory (printable?)?
UPDATE
My process so far:
Use XXCopy to merge all icon folders into one folder.
Syntax = xxcopy "C:\Documents and Settings\jm\My Documents\Icons" "C:\Documents and Settings\jm\My Documents\All_Icons" /s /sr
Use Contact Sheets to add all files from the super folder and then export out contact sheets for all the images. This should sort them alphabetically.
Print and put in a binder -> now to find the actual file all you need to do is browse the binder, find the filename, and then search via Windows for the actual folder location.
In Visual Studio, there is a ZIP file with icons organized in folders. The organization is mostly by filetype and image size, is pretty messy, and contains many duplicates, so you should probably not follow their example.
However, they provide a HTML file in each folder that shows the icons in that folder in a nice readable list (better than Explorer's standard preview). You could do something similar, but maybe provide a table instead, for example with one column per collection, and one row per "concept" (e.g. save icon).

Resources