Page 3 of 11 FirstFirst 1234567 ... LastLast
Results 21 to 30 of 102

Thread: Point optimisation: how to

  1. #21
    Join Date
    Mar 2012
    Location
    Akron, Ohio USA
    Posts
    1,344

    Default

    I am glad that there is an ongoing conversation about this stuff though....

    It could bring a lot of stuff to light. And maybe it will inspire a few new ideas.

    James.
    Creator of LaserBoy!
    LaserBoy is free and runs in Windows, MacOSX and Linux.
    http://laserboy.org/code/LaserBoy_Current.zip
    http://theamerikans.org/LaserBoy

    http://laserboy.org/formatt/
    Ask me about my LaserBoy Correction Amp Kit for sale!

    Either do or do not do. There is no undo!

  2. #22
    Join Date
    Mar 2012
    Location
    Akron, Ohio USA
    Posts
    1,344

    Default

    Maybe the best thing to do is write your own ideas into your own code and if you want to share them, document them and store the parameters in an easy to read file format. Then, if other developers want to use your ideas, they could also import your settings files.

    My extensions to the wave file format are somewhat documented. The code is open source. My text file format is also documented.

    There have been some other apps developed that can read LB formatted wave files.

    I'm usually pretty happy to help someone understand these formats.

    James.
    Creator of LaserBoy!
    LaserBoy is free and runs in Windows, MacOSX and Linux.
    http://laserboy.org/code/LaserBoy_Current.zip
    http://theamerikans.org/LaserBoy

    http://laserboy.org/formatt/
    Ask me about my LaserBoy Correction Amp Kit for sale!

    Either do or do not do. There is no undo!

  3. #23
    Join Date
    Jul 2008
    Location
    My momentum is too precisely determined :S
    Posts
    1,764

    Default

    Quote Originally Posted by james View Post
    How would you go about "standardizing" optimization technology?

    How could you be sure that you were using your parameters with the same kind of math as they are used in some other app?

    I had to figure out how to get the results that I have in LB. I had no methods or code from anywhere else.

    And like I said, my ideas might not make you happy. I would imagine that the techniques of today will be outdated some day.

    There isn't even a standard for saving optimized art; let alone parameters for making it!

    I've tried to move in that direction with my wave file extensions.

    A wave file is logically connected to time. An ILDA file is not.

    James.
    You raise a very valid point. The parameters in my proposal file only change the frame and its points, but does nothing for the timing or the duration of a specific frame. I believe all current parameters are quite unambiguous, there's only one correct result when you interpolate a line, or add points at transitions/angles, no matter how you do it... As you say an Ilda file is not connected to time as is a wave or a stream of points. So is it necessary to think of a clever way to do timing optimisation? Because that's indeed something that's entirely dependent on the program or system that displays the frame.

    Instead of a fixed interpolation distance, it might be better to have a fixed point count per frame and the optimisation algorithm would calculate how many points to add based on that. That's harder to do than just interpolating with a fixed distance, so programmers might not implement it and that wouldn't be beneficial.

    Quote Originally Posted by james View Post
    My text file format is also documented.
    Lies! There are no comments here...

    Code:
    LaserBoy.wtf-12-02-2014
    .
    0
    0
    0
    48000
    2
    10
    1
    1
    100
    6
    18
    1000
    61
    4800
    0
    0
    0
    0
    0
    0
    1
    1
    0
    0
    800
    1000
    333
    50000
    60
    0.0174533
    2
    0.7
    6
    0.7
    0.2
    0.0174533
    0.01
    16
    10
    aabuL0_Z
    0
    0
    0
    0
    0
    0
    0
    0
    0
    1
    1
    0
    0
    0
    0
    0
    1
    0
    0
    1
    0
    0
    1
    1
    0
    0
    0
    0
    0
    0
    1
    1
    1
    0
    0
    0
    0
    0
    0
    0
    1
    0
    0
    1
    0
    1
    0
    0
    0
    -5
    -5
    -5
    0
    0
    0
    0
    4
    0
    0
    7
    7
    7
    0
    0
    0
    .
    .
    .
    .
    
    If this file is currupted, delete it!

  4. #24
    Join Date
    Feb 2007
    Location
    Fort Mill, SC USA
    Posts
    1,408

    Default

    Quote Originally Posted by colouredmirrorball View Post
    Lies! There are no comments here...

    Code:
    LaserBoy.wtf-12-02-2014
    .
    0
    0
    0
    48000
    2
    10
    1
    1
    100
    6
    18
    1000
    61
    4800
    0
    0
    0
    0
    0
    0
    1
    1
    0
    0
    800
    1000
    333
    50000
    60
    0.0174533
    2
    0.7
    6
    0.7
    0.2
    0.0174533
    0.01
    16
    10
    aabuL0_Z
    0
    0
    0
    0
    0
    0
    0
    0
    0
    1
    1
    0
    0
    0
    0
    0
    1
    0
    0
    1
    0
    0
    1
    1
    0
    0
    0
    0
    0
    0
    1
    1
    1
    0
    0
    0
    0
    0
    0
    0
    1
    0
    0
    1
    0
    1
    0
    0
    0
    -5
    -5
    -5
    0
    0
    0
    0
    4
    0
    0
    7
    7
    7
    0
    0
    0
    .
    .
    .
    .
    
    If this file is currupted, delete it!
    Actually that is documentation, CMB. That is the series of keystrokes you have to hit to navigate between the LB menus. Be sure to convert each group of 2-3 digits into the associated key, first. You may also find that you need a German, Spanish and French keyboard for some of the keys . . .
    "Help, help, I'm being repressed!"

  5. #25
    Join Date
    Dec 2010
    Location
    DC/VA metro area, USA
    Posts
    554

    Default

    You know, the corner dwell time shouldn't really be based on the angle; it should be based on the max delta energy required for each scanner. That is, for a 90 degree angle, at least one scanner is going to have to stop and possibly reverse direction. Consider a right angle aligned with the x y axis where one scanner is going to stop and the other is going to start after the corner. There is no need to wait longer than it takes the moving scanner to stop, so the dwell should max at 90 degrees in that case, not 180.

    Sorry that's so abbreviated; typing on the phone is tedious.

  6. #26
    Join Date
    Jul 2008
    Location
    My momentum is too precisely determined :S
    Posts
    1,764

    Default

    Quote Originally Posted by JohnYayas View Post
    I don't necessarily agree. What if the interpolation is not linear? Or instead of placing all corner points at a vertex, you place them approaching the vertex. When you think about the physics of going on, it doesn't really make sense to do it in a linear fashion anyway. I think there could be a lot of work in modeling the physical properties of galvos and interpolating in a way that matches the acceleration/deceleration properties of the hardware. If someone goes to that much trouble I think they might have something really nice but it isn't going to fit a standard set of presets and it isn't something they want to give away for free. That's why I don't think the idea of a standard is all that attractive. I suppose if everyone adopted it you could have a "standard" button that works with those settings and then a "proprietary" button for when you want to switch to your own super mode. But, that would be silly. I think what would make more sense is just a regular file format similar to SVG that has no optimization settings. Everyone would be able to read it and process it how they please. For example, an MP3 file will provide musical content but a stereo might have all kinds of circuits, filters, etc to make it sound nice.
    Do you think a regular ilda file with only the necessary points to define the art (no extra corner points, no collinear points etc) would work for that?
    Quote Originally Posted by JohnYayas View Post
    The two things I don't really find attractive about your standard is that it dictates the optimization techniques to some degree which prevents improvement. And, if someone had a really awesome optimization engine I doubt they would want to share the details. At least not in a commercial setting.
    That's true in some regard. Then it's better to go with the idea of hints... but that's not very concrete. You could for example create a file that says how many points a frame should have and how fast it should scan etc. and leave the rest to the optimising algorithm. Or when you have a projector which is particularly bad at scanning sharp corners, it could have a hint to add more points at corners. I've no clue how that would work in real life though.

    Quote Originally Posted by tribble View Post
    You know, the corner dwell time shouldn't really be based on the angle; it should be based on the max delta energy required for each scanner. That is, for a 90 degree angle, at least one scanner is going to have to stop and possibly reverse direction. Consider a right angle aligned with the x y axis where one scanner is going to stop and the other is going to start after the corner. There is no need to wait longer than it takes the moving scanner to stop, so the dwell should max at 90 degrees in that case, not 180.

    Sorry that's so abbreviated; typing on the phone is tedious.
    But if you do a 180 (or 0 as defined in the document above) both scanners have to come to a complete stop before returning. Isn't that the hardest case for the scanners?

  7. #27
    Join Date
    Mar 2012
    Location
    Akron, Ohio USA
    Posts
    1,344

    Default

    Sorry for the confusion. When I said my text file format is documented, I was referring to my text file format for frame data.

    http://laserboy.org/forum/index.php?topic=218.0

    LaserBoy exports and imports plain ASCII text for palettes and frame sets.

    The text file format of the wtf files is documented in the code. No it is not a list of keystrokes to enter.... It's the set of all LaserBoy settings in a particular order that can be saved and loaded quickly. There is a series of versions of this file format and LB knows how to identify and read them back to 2009.

    All of those settings in LB didn't come from nowhere.... I had to figure out what I thought might influence the way the scanners would respond to timed samples per second (a wave file).

    I will not say that this is the right way to do it or that it is completely done. It just happens to produce results that seem to work.

    In my mind, it seems that you can't do things that require knowledge of time without a connection to time. Optimization is in the time domain.

    The nice thing about wave is that it was designed to be extensible and it is obviously connected to time (samples per second).

    It also represents a kind of DAC that is conveniently disconnected from any hardware or real-time. It's like printing to a fake printer that saves a PDF file. When you need it, there it is, fully cooked.

    But even if you never save a wave file from LB it will still let you save as much of the optimizations as is allowed in an ILDA file.

    James.
    Last edited by james; 01-13-2015 at 16:29.
    Creator of LaserBoy!
    LaserBoy is free and runs in Windows, MacOSX and Linux.
    http://laserboy.org/code/LaserBoy_Current.zip
    http://theamerikans.org/LaserBoy

    http://laserboy.org/formatt/
    Ask me about my LaserBoy Correction Amp Kit for sale!

    Either do or do not do. There is no undo!

  8. #28
    Join Date
    Mar 2010
    Location
    Raleigh, NC
    Posts
    2,063

    Default

    In general, I would like to stop thinking about points and optimization settings and let the software handle it. I have a ton of ideas on how that could be accomplished that I have been tossing around and hope to someday implement.

  9. #29
    Join Date
    Jul 2008
    Location
    My momentum is too precisely determined :S
    Posts
    1,764

    Default

    Why not share your ideas and let others implement it? :P


    But then we're back to square one... 100 different programs with 100 different outputs for the same content.

  10. #30
    Join Date
    Mar 2010
    Location
    Raleigh, NC
    Posts
    2,063

    Default

    I've shared my ideas here and elsewhere before.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •