Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- load(scripting.getScriptsDirectory().toString() + '/Examples/JavaScript/Utility.js');
- // Import some OpenPnP classes we'll use
- var imports = new JavaImporter(org.openpnp.model, org.openpnp.util, org.openpnp.vision.pipeline.CvPipeline, org.openpnp.vision.pipeline.CvStage);
- // Using the imports from above, do some work.
- with (imports) {
- task(function() {
- var xml = '<pipeline>' +
- '<stages>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ImageCapture" name="0" enabled="true" settle-first="true"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ImageWriteDebug" name="13" enabled="true" prefix="bv_source_" suffix=".png"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.BlurGaussian" name="10" enabled="true" kernel-size="9"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.MaskCircle" name="4" enabled="true" diameter="525"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ConvertColor" name="1" enabled="true" conversion="Bgr2HsvFull"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.MaskHsv" name="2" enabled="true" hue-min="60" hue-max="130" saturation-min="0" saturation-max="255" value-min="0" value-max="255"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ConvertColor" name="3" enabled="true" conversion="Hsv2BgrFull"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ConvertColor" name="6" enabled="true" conversion="Bgr2Gray"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.Threshold" name="12" enabled="true" threshold="100" auto="false" invert="false"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.FindContours" name="5" enabled="true" retrieval-mode="List" approximation-method="None"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.FilterContours" name="9" enabled="true" contours-stage-name="5" min-area="50.0" max-area="900000.0"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.MaskCircle" name="11" enabled="true" diameter="0"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.DrawContours" name="7" enabled="true" contours-stage-name="9" thickness="2" index="-1">' +
- '<color r="255" g="255" b="255" a="255"/>' +
- '</cv-stage>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.MinAreaRect" name="results" enabled="true" threshold-min="100" threshold-max="255"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ImageRecall" name="14" enabled="true" image-stage-name="0"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.DrawRotatedRects" name="8" enabled="true" rotated-rects-stage-name="results" thickness="2" draw-rect-center="false" rect-center-radius="20" show-orientation="false"/>' +
- '<cv-stage class="org.openpnp.vision.pipeline.stages.ImageWriteDebug" name="15" enabled="true" prefix="bv_result_" suffix=".png"/>' +
- '</stages>' +
- '</pipeline>';
- print(xml);
- print("Is this thing on?");
- try {
- var pipeline = new CvPipeline(xml);
- }
- catch (err)
- {
- print("Error making pipeline: " + err);
- throw err;
- }
- var camera = machine.getDefaultHead().getDefaultCamera();
- pipeline.setProperty("camera", camera);
- try
- {
- pipeline.process();
- }
- catch (err)
- {
- print("Error processing pipeline: " + err);
- throw err;
- }
- var result = pipeline.getResult("results");
- //print(result);
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement