Coder Social home page Coder Social logo

imageneuralnet's People

Contributors

q121212 avatar

Watchers

 avatar  avatar

imageneuralnet's Issues

Issue 3 - Create app for linux / Windows os

Number of .iff files on my laptop has become so big that I start think - create app for views/create and save this files (and, also, for creating thumbnails in folderы with this files) - it is a worthy goal!

Issue 4 - More abstract method for extracting primitives from .iff image

My first attempts to implement extracting an primitive elements from .iff image looks so specific, and it's a really bad! I think about more abstract extracting methods. A kind of prototype for this task I learned from studying contemporary methods, used for image resizing. I'm going to use sort of "movable window". This window will move within the image and during this movement will be searched primitives.
This method looks more abstract, because it isn't looks like connected with different characteristics of primitive, exclude width and height of primitive.

In the future, this method could be used to search for a group of related primitives.

Issue 5 - Current INN implementation of NN

Currently (ver. 2ca9095), NN implementation is on the level when understanding of NN is more like multistage regression or multistage calculations, but its a wrong!
Need to review this approach and transform this one to more complex/self-sustained/self-dependent perspective.
For example, I extracted some corners from every image, and, I think - the next step - from this extracted corners extract something else. But it's just multistage extraction and sequential calculations.

Issue 1 - Image file format structure problems

Current a image file format structure is a very simple Python's two-dimensional list, as: [[0,1,0][1,1,1]]...
But when I save an image to file, its structure is simplified to 0 and 1 sequence and for extracting image file structure I need to know the width of image.
This problem leads to the need define width of image explicitly.
And a good idea is to have and storing in a image file some appropriate data, for example, image width.
For solve this problem need to create a container method. This method must be able to locate the necessary information in a desired part of the file. Another method - should be able to to extract from the file necessary piece of data.
In case if storing metadata of image in initial part of the file: it will be necessary calculate size of metadata and also - separate metadata from the image.
And, in this case, it will be necessary to revise and rewrite already written methods that work with files.

Issue 2 - A little analysis of the project and defining the next step for its development - IFF part

For current version of Project we have the next methods:

Key methods:

  • transponse(data, width)
  • image_structure(image, image_width)

Methods w/o metadata:

  • Methods working with only image (w\o files):
    • generate_empty_image(width, height)
    • draw_image(image, image_width, canvas_width = 500, canvas_height = 500)
    • max_image_w_value(image)
    • max_image_h_value(image)
  • Methods working with files:
    • openimagefile(filename, width)
    • save_image(image, filename)
    • draw_image_file(filename, image_width, canvas_width = 500, canvas_height = 500)
    • paint_image(canvas_width = 500, canvas_height = 500)
    • extract_image_from_painted_image(drawed_image_filename)
    • paint_image_and_save_to_file(filename)
  • Methods with metadata:
    • save_image_with_metadata(image, image_width, filename)
    • extract_image_from_image_with_metadata(filename)
    • extract_image_width_from_image_with_metadata(filename)

Need to modified/rewrite the next methods:

  • Methods for painting image:
    • paint_image(canvas_width = 500, canvas_height = 500) #In a fact it is a half of required method, because paint and save painted points to file 'positions.txt'. A whole/full method should return a image and don't use this file.
    • extract_image_from_painted_image(drawed_image_filename) #need to merge the next methods: paint_image and extract_image_from_painted_image. And resul will be a full method.
    • paint_image_and_save_to_file(filename) # this is a full method, but it's implemented through the crutches (and main crutch is using 'positions.txt' file). Need rewrite the method without using the file 'positions.txt'
      As a result it's necessary to rewrite the code of these three methods and merge it into one method with paint image functionality which not use a file 'positions.txt' as a crutch, and return in result an image or image_file.

Pursuing the goal - to switch to the new image file structure I tought that it's necessary to write some methods, but the correletions between methods working with old image file structure and methods working with new image file structure shows that all theold methods have their new counterparts/equivalents:

  • openimagefile(filename, width) == extract_image_from_image_with_metadata(filename) + extract_image_width_from_image_with_metadata(filename)
  • save_image(image, filename) == save_image_with_metadata(image, image_width, filename)

The next iterations of the Image File Format (IFF) Structure developing suggests the next steps:

  • - addition colors to IFF. Now we have only black/white version. This step suggests changing image_structure and changinh image file format structure (discussed now how to do it)
    Also need to add the next methods:
  • - addition data compressing. This step suggests in first head - defining with compressing methods, and in second head, respectively - changing image_structure and changing image file format structure.

New image structure:

  • image_width
  • colors mode (b/w, grayscale, color)
  • compression mode (w/o compression, compression method, kind of a compression mode)
  • data:
    • list of lists pixels ???
    • list of the colors used in image
  • compression data

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.