Exemple #1
0
class RawBlockDevice(BlockDevice):
    def __init__(self, raw_file, read_only=False, block_bytes=512, fobj=None):
        self.img_file = ImageFile(raw_file, read_only, block_bytes, fobj)

    def create(self, num_blocks):
        self.img_file.create(num_blocks)
        self.open()
        self.num_blocks = num_blocks

    def open(self):
        self.img_file.open()
        # calc block longs
        self.block_bytes = self.img_file.block_bytes
        self.block_longs = self.block_bytes / 4
        self.num_blocks = self.img_file.num_blocks

    def flush(self):
        pass

    def close(self):
        self.img_file.close()

    def read_block(self, blk_num):
        return self.img_file.read_blk(blk_num)

    def write_block(self, blk_num, data):
        self.img_file.write_blk(blk_num, data)
Exemple #2
0
class RawBlockDevice(BlockDevice):
  def __init__(self, raw_file, read_only=False, block_bytes=512, fobj=None):
    self.img_file = ImageFile(raw_file, read_only, block_bytes, fobj)

  def create(self, num_blocks):
    self.img_file.create(num_blocks)
    self.open()
    self.num_blocks = num_blocks

  def open(self):
    self.img_file.open()
    # calc block longs
    self.block_bytes = self.img_file.block_bytes
    self.block_longs = self.block_bytes / 4
    self.num_blocks = self.img_file.num_blocks

  def flush(self):
    pass

  def close(self):
    self.img_file.close()

  def read_block(self, blk_num):
    return self.img_file.read_blk(blk_num)

  def write_block(self, blk_num, data):
    self.img_file.write_blk(blk_num, data)
def thinning():
    filename = request.form['filename']
    img = ImageFile(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    if img.mode == "1":
        output = zs_thin(img)
        new_file = img.save_img(output, filename, thinning=True)
        move_file(new_file)
        return render_template('index.html', filename=filename, new_file=new_file)
    else:
        flash("Image must have bit depth of 1")
        return redirect(url_for('image', filename=filename))
def thinning():
    filename = request.form['filename']
    img = ImageFile(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    if img.mode == "1":
        output = zs_thin(img)
        new_file = img.save_img(output, filename, thinning=True)
        move_file(new_file)
        return render_template('index.html',
                               filename=filename,
                               new_file=new_file)
    else:
        flash("Image must have bit depth of 1")
        return redirect(url_for('image', filename=filename))
Exemple #5
0
def create_refs_and_subjects(directory_in_str, compressor, compressor_type,
                             nr_refs_files):
    refs = {}
    subjects = []
    general_directory = os.fsencode(directory_in_str)

    list_dir = os.listdir(general_directory)
    list_dir.sort()

    for dir in list_dir:
        dir_name = os.fsdecode(dir)
        sub_dir = os.path.join(directory_in_str, dir_name)
        if os.path.isdir(sub_dir):
            imgs = os.listdir(sub_dir)
            imgs.sort()
            image_files = []
            new_subject = Subject(dir_name)

            for i in imgs:
                img_dir = os.path.join(sub_dir, i)
                file = ImageFile(img_dir, compressor, compressor_type)
                if len(image_files) < nr_refs_files:
                    image_files.append(file)
                else:
                    new_subject.add_test_file(file)
            refs[dir_name] = image_files
            subjects.append(new_subject)
    return refs, subjects
def filter():
    kernel = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
    counter = 0
    filename = request.form['filename']

    for k in range(len(kernel)):
        for j in range(len(kernel)):
            n = parse(request.form['k' + str(counter)])
            if n is not False:
                kernel[k][j] = n
                counter += 1
            else:
                flash("Bad kernel value")
                return render_template('index.html', filename=filename)

    img = ImageFile(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    output = produce_output(kernel, img)
    new_file = img.save_img(output, filename)
    move_file(new_file)
    return render_template('index.html', filename=filename, new_file=new_file)
def filter():
    kernel = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
    counter = 0
    filename = request.form['filename']

    for k in range(len(kernel)):
        for j in range(len(kernel)):
            n = parse(request.form['k' + str(counter)])
            if n is not False:
                kernel[k][j] = n
                counter += 1
            else:
                flash("Bad kernel value")
                return render_template('index.html', filename=filename)

    img = ImageFile(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    output = produce_output(kernel, img)
    new_file = img.save_img(output, filename)
    move_file(new_file)
    return render_template('index.html', filename=filename, new_file=new_file)
def zoning():
    filename = request.form['filename']
    img = ImageFile(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    if img.mode == "1":
        trimmed = trim(img)
        img_vector = feature_histogram(trimmed)
        return render_template('index.html',
                               filename=filename,
                               img_vector=img_vector)
    else:
        flash("Image must have bit depth of 1")
        return redirect(url_for('image', filename=filename))
def recognize_zone():
    filename = request.form['filename']
    img = ImageFile(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    if img.mode == "1":
        trimmed = trim(img)
        img_vector = feature_histogram(trimmed)
        number = compare("histogram.txt", img_vector)
        return render_template('index.html',
                               filename=filename,
                               number=number,
                               returned=True)
    else:
        flash("Image must have bit depth of 1")
        return redirect(url_for('image', filename=filename))
class HDFBlockDevice(BlockDevice):
  def __init__(self, hdf_file, read_only=False, block_size=512, fobj=None):
    self.img_file = ImageFile(hdf_file, read_only, block_size, fobj)

  def create(self, geo, reserved=2):
    self._set_geometry(geo.cyls, geo.heads, geo.secs, reserved=reserved)
    self.img_file.create(geo.get_num_blocks())
    self.img_file.open()

  def open(self, geo, reserved=2):
    self._set_geometry(geo.cyls, geo.heads, geo.secs, reserved=reserved)
    self.img_file.open()

  def flush(self):
    pass

  def close(self):
    self.img_file.close()

  def read_block(self, blk_num):
    return self.img_file.read_blk(blk_num)

  def write_block(self, blk_num, data):
    return self.img_file.write_blk(blk_num, data)
Exemple #11
0
class HDFBlockDevice(BlockDevice):
    def __init__(self, hdf_file, read_only=False, block_size=512, fobj=None):
        self.img_file = ImageFile(hdf_file, read_only, block_size, fobj)

    def create(self, geo, reserved=2):
        self._set_geometry(geo.cyls, geo.heads, geo.secs, reserved=reserved)
        self.img_file.create(geo.get_num_blocks())
        self.img_file.open()

    def open(self, geo, reserved=2):
        self._set_geometry(geo.cyls, geo.heads, geo.secs, reserved=reserved)
        self.img_file.open()

    def flush(self):
        pass

    def close(self):
        self.img_file.close()

    def read_block(self, blk_num):
        return self.img_file.read_blk(blk_num)

    def write_block(self, blk_num, data):
        return self.img_file.write_blk(blk_num, data)
def upload():
    if request.method == 'POST':
        file = request.files['file']
        if file and allowed_file(file.filename):
            try:
                filename = ImageFile.time_stamp() + secure_filename(file.filename)
                file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
                file.close()
                return redirect(url_for('image', filename=filename))
            except RequestEntityTooLarge as e:
                flash('data too large')
                return redirect(url_for('upload'))
        else:
            flash('File extension not allowed. Only .bmp files are supported')
            return render_template('index.html')
    else:
        return render_template('index.html')
def upload():
    if request.method == 'POST':
        file = request.files['file']
        if file and allowed_file(file.filename):
            try:
                filename = ImageFile.time_stamp() + secure_filename(
                    file.filename)
                file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
                file.close()
                return redirect(url_for('image', filename=filename))
            except RequestEntityTooLarge as e:
                flash('data too large')
                return redirect(url_for('upload'))
        else:
            flash('File extension not allowed. Only .bmp files are supported')
            return render_template('index.html')
    else:
        return render_template('index.html')
Exemple #14
0
def get_file_type(path):
    patterns = {
        'img':
        re.compile(r'.(png|jpg|jpeg|gif|tiff|raw|psd|eps|ai|indd)'),
        'archive':
        re.compile(r'.(tar|bz2|gz|7z|arc|ark|jar|rar|tar.gz|tgz|'
                   r'tar.Z|tar.bz2|tbz2|tar.lz|tlz.tar.xz|txz|zip|zipx)'),
        'vid':
        re.compile(r'.(mkv|avi|mp4)')
    }

    for key, pattern in patterns.items():
        if pattern.search(path) and key == 'img':
            return ImageFile(path)
        elif pattern.search(path) and key == 'archive':
            return ArchiveFile(path)
        elif pattern.search(path) and key == 'vid':
            return VideoFile(path)
        else:
            return MainWindow(path)
Exemple #15
0
 def __init__(self, raw_file, read_only=False, block_bytes=512, fobj=None):
     self.img_file = ImageFile(raw_file, read_only, block_bytes, fobj)
    '-00s.bmp', '-00t.bmp', '-00u.bmp', '-00v.bmp', '-00w.bmp', '-00x.bmp',
    '-00y.bmp'
]

zeros = dict(path="./images/zero/", v=["0" + j for i, j in enumerate(suffix)])
ones = dict(path="./images/one/", v=["1" + j for i, j in enumerate(suffix)])
twos = dict(path="./images/two/", v=["2" + j for i, j in enumerate(suffix)])
threes = dict(path="./images/three/",
              v=["3" + j for i, j in enumerate(suffix)])
fours = dict(path="./images/four/", v=["4" + j for i, j in enumerate(suffix)])
fives = dict(path="./images/five/", v=["5" + j for i, j in enumerate(suffix)])
sixs = dict(path="./images/six/", v=["6" + j for i, j in enumerate(suffix)])
sevens = dict(path="./images/seven/",
              v=["7" + j for i, j in enumerate(suffix)])
eights = dict(path="./images/eight/",
              v=["8" + j for i, j in enumerate(suffix)])
nines = dict(path="./images/nine/", v=["9" + j for i, j in enumerate(suffix)])
lists = [zeros, ones, twos, threes, fours, fives, sixs, sevens, eights, nines]

f = open('histogram.txt', 'w')
for l in lists:
    files = l.get('v')
    path = l.get('path')
    for fil in files:
        img = ImageFile(path + fil)
        trimmed = trim(img)
        img_vector = feature_histogram(trimmed)
        f.write(",".join([str(s) for s in img_vector]))
        f.write('\n')
f.close()
Exemple #17
0
        c = """context.registerClass(
            %s.%s,
            permission='%s',
            constructors=(%s.manage_add%s_html, %s.add%s, %s.%s),
            icon='%s/www/%s.gif',
            visibility=None
        )""" % (m, m, p, m, m, m, m, m, a, m, m)
        exec(c)


#meta types as global variables
for x in content.values():
    c = 'METATYPE_%s = \'%s\'' % (x['module'].upper(), x['meta_type'])
    exec(c)
    c = 'PERMISSION_ADD_%s = \'%s\'' % (x['module'].upper(), x['permission'])
    exec(c)

#images
for x in dirs:
    misc_['%s.gif' % x] = ImageFile('%s/www/%s.gif' % (x, x), globals())
    misc_['%s_marked.gif' % x] = ImageFile('%s/www/%s_marked.gif' % (x, x),
                                           globals())

    ct_misc = {}
    try:
        exec("from %s import misc_ as ct_misc" % x)
    except ImportError:
        continue

    misc_.update(ct_misc)
Exemple #18
0
    uWordUnmunger = 1
except:
    uWordUnmunger = 0

import Globals
from Products.PageTemplates.PageTemplateFile import PageTemplateFile
from ImageFile import ImageFile

# Regexp for snipping the body of a document
HTML_BODY = re.compile('<body[^>]*?>(.*)</body[^>]*?>', re.DOTALL|re.IGNORECASE)
MSO_CLASS = re.compile(r'<(\w+)\W+(class="Mso.*?")>', re.IGNORECASE)
EPOZ_SCRIPT = re.compile(r'<epoz:script (style="[^"]*")? ?')

misc_ = {
 # The Format-Controls
'epoz_script_main.js':ImageFile('epoz/epoz_core/epoz_script_main.js.dtml', globals()),

 # Rendering of the widget
'epoz_script_widget.js':ImageFile('epoz/epoz_core/epoz_script_widget.js.dtml', globals()),

 # Browser-detection
'epoz_script_detect.js':ImageFile('epoz/epoz_core/epoz_script_detect.js.dtml', globals()),

 # Code for the color-selection-popup
'epoz_script_color.html':ImageFile('epoz/epoz_core/epoz_script_color.html.dtml', globals()),

 # Code for the table-popup
'epoz_script_table.html':ImageFile('epoz/epoz_core/epoz_script_table.html.dtml', globals()),

 # The XMLRPC-handler
'vcXMLRPC.js':ImageFile('epoz/epoz_core/vcXMLRPC.js.dtml', globals()),
Exemple #19
0
        icon='NotificationTool/www/NotificationTool.gif')
    context.registerClass(ProfilesTool.ProfilesTool,
                          permission=PERMISSION_ADD_NAAYACORE_TOOL,
                          constructors=(ProfilesTool.manage_addProfilesTool, ),
                          icon='ProfilesTool/www/ProfilesTool.gif')

    if geo_installed:
        context.registerClass(GeoMapTool.GeoMapTool,
                              permission=PERMISSION_ADD_NAAYACORE_TOOL,
                              constructors=(GeoMapTool.manage_addGeoMapTool, ),
                              icon='GeoMapTool/www/GeoMapTool.gif')


misc_ = {
    'PropertiesTool.gif':
    ImageFile('PropertiesTool/www/PropertiesTool.gif', globals()),
    'CatalogTool.gif':
    ImageFile('CatalogTool/www/CatalogTool.gif', globals()),
    'EmailTool.gif':
    ImageFile('EmailTool/www/EmailTool.gif', globals()),
    'EmailTemplate.gif':
    ImageFile('EmailTool/www/EmailTemplate.gif', globals()),
    'TranslationsTool.gif':
    ImageFile('TranslationsTool/www/TranslationsTool.gif', globals()),
    'SyndicationTool.gif':
    ImageFile('SyndicationTool/www/SyndicationTool.gif', globals()),
    'RemoteChannel.gif':
    ImageFile('SyndicationTool/www/RemoteChannel.gif', globals()),
    'RemoteChannelFacade.gif':
    ImageFile('SyndicationTool/www/RemoteChannelFacade.gif', globals()),
    'LocalChannel.gif':
Exemple #20
0
                ),
        icon = 'www/Site.gif'
        )
    context.registerClass(
        NyFolder.NyFolder,
        permission = PERMISSION_ADD_FOLDER,
        constructors = (
                NyFolder.manage_addNyFolder_html,
                NyFolder.folder_add_html,
                NyFolder.addNyFolder,
                ),
        icon = 'www/NyFolder.gif'
        )

misc_ = {
    'Site.gif':ImageFile('www/Site.gif', globals()),
    'NyFolder.gif':ImageFile('www/NyFolder.gif', globals()),
    'NyFolder_marked.gif':ImageFile('www/NyFolder_marked.gif', globals()),

    'spacer.gif':ImageFile('www/spacer.gif', globals()),
    'square.gif':ImageFile('www/square.gif', globals()),
    'plus.gif':ImageFile('www/plus.gif', globals()),
    'minus.gif':ImageFile('www/minus.gif', globals()),
    'sort_asc.gif':ImageFile('www/sort_asc.gif', globals()),
    'sort_desc.gif':ImageFile('www/sort_desc.gif', globals()),
    'sort_not.gif':ImageFile('www/sort_not.gif', globals()),

    'select_all.gif':ImageFile('www/select_all.gif', globals()),
    'copy.gif':ImageFile('www/copy.gif', globals()),
    'cut.gif':ImageFile('www/cut.gif', globals()),
    'delete.gif':ImageFile('www/delete.gif', globals()),
Exemple #21
0
 def __init__(self, hdf_file, read_only=False, block_size=512, fobj=None):
     self.img_file = ImageFile(hdf_file, read_only, block_size, fobj)
Exemple #22
0
#
# Dragos Chirila, Finsiel Romania

#Python imports

#Zope imports
from ImageFile import ImageFile

#Product imports
from constants import *
import NyPhotoFolder


def initialize(context):
    """ """

    context.registerClass(NyPhotoFolder.NyPhotoFolder,
                          permission=PERMISSION_ADD_PHOTOFOLDER,
                          constructors=(
                              NyPhotoFolder.manage_addNyPhotoFolder_html,
                              NyPhotoFolder.manage_addNyPhotoFolder,
                          ),
                          icon='www/NyPhotoFolder.gif')


misc_ = {
    'NyPhotoFolder.gif': ImageFile('www/NyPhotoFolder.gif', globals()),
    'NyPhoto.gif': ImageFile('www/NyPhoto.gif', globals()),
    'NyPhoto_marked.gif': ImageFile('www/NyPhoto_marked.gif', globals()),
}
Exemple #23
0
ones = ['1-00a.bmp', '1-00b.bmp', '1-00c.bmp', '1-00d.bmp', '1-00e.bmp']
for j in range(2):
    if j == 0:
        s = models.Symbol(name="zero")
    else:
        s = models.Symbol(name="one")
    db.session.add(s)
    db.session.commit()

    for i in range(5):
        if j == 0:
            path = "./images/zero/" + zeros[i]
        else:
            path = "./images/one/" + ones[i]

        img = ImageFile(path)
        trimmed = trim(img)
        img_vector = zoning_method(trimmed)

        for k in range(16):
            if k == 0:
                v = models.V1(histogram_value=img_vector[k], number=s)
            elif k == 1:
                v = models.V2(histogram_value=img_vector[k], number=s)
            elif k == 2:
                v = models.V3(histogram_value=img_vector[k], number=s)
            elif k == 3:
                v = models.V4(histogram_value=img_vector[k], number=s)
            elif k == 4:
                v = models.V5(histogram_value=img_vector[k], number=s)
            elif k == 5:
 def __init__(self, hdf_file, read_only=False, block_size=512, fobj=None):
   self.img_file = ImageFile(hdf_file, read_only, block_size, fobj)
 def __init__(self, raw_file, read_only=False, block_bytes=512, fobj=None):
   self.img_file = ImageFile(raw_file, read_only, block_bytes, fobj)
Exemple #26
0
def initialize(context):
    """ """

    #register classes
    context.registerClass(EnvPortal.EnvPortal,
                          permission=PERMISSION_ADD_ENVPORTAL,
                          constructors=(
                              EnvPortal.manage_addEnvPortal_html,
                              EnvPortal.manage_addEnvPortal,
                          ),
                          icon='www/Site.gif')


misc_ = {
    'Site.gif': ImageFile('www/Site.gif', globals()),
}

#process config.xml file
content_urls = {}
config = config_parser()
config_handler, error = config_parser().parse(file_utils().futRead(
    join(ENVPORTAL_PRODUCT_PATH, 'skel', 'config.xml'), 'r'))
if config_handler is not None:
    if config_handler.root.urls is not None:
        for item in config_handler.root.urls.entries:
            if not content_urls.has_key(item.meta_type):
                content_urls[item.meta_type] = []
            content_urls[item.meta_type].append(item.property)

Exemple #27
0
    def sql_quote__(self, v, escapes={}):
        return self._v_database_connection.string_literal(v)


classes = ('DA.Connection', )

meta_types = ({
    'name': 'Z %s Database Connection' % database_type,
    'action': 'manage_addZ%sConnectionForm' % database_type,
}, )

folder_methods = {
    'manage_addZMySQLConnection': manage_addZMySQLConnection,
    'manage_addZMySQLConnectionForm': manage_addZMySQLConnectionForm,
}

__ac_permissions__ = (('Add Z MySQL Database Connections',
                       ('manage_addZMySQLConnectionForm',
                        'manage_addZMySQLConnection')), )

misc_ = {
    'conn':
    ImageFile(
        os.path.join('Shared', 'DC', 'ZRDB', 'www',
                     'DBAdapterFolder_icon.gif'))
}

for icon in ('table', 'view', 'stable', 'what', 'field', 'text', 'bin', 'int',
             'float', 'date', 'time', 'datetime'):
    misc_[icon] = ImageFile(os.path.join('icons', '%s.gif') % icon, globals())
Exemple #28
0
        path = os.path.join(here, 'lib', 'python', 'Products', 'ZRoundup')
        if not os.path.exists(path):
            here = None
if here is None:
    from __main__ import here
    path = os.path.join(here, 'Products', 'ZRoundup')
    if not os.path.exists(path):
        path = os.path.join(here, 'lib', 'python', 'Products', 'ZRoundup')
        if not os.path.exists(path):
            raise ValueError, "Can't determine where ZRoundup is installed"

# product initialisation
from ZRoundup import ZRoundup, manage_addZRoundupForm, manage_addZRoundup
def initialize(context):
    context.registerClass(
        ZRoundup,
        meta_type = 'Z Roundup',
        constructors = (
            manage_addZRoundupForm, manage_addZRoundup
        )
    )

# set up the icon
from ImageFile import ImageFile
misc_ = {
    'icon': ImageFile('icons/tick_symbol.gif', path), 
}


# vim: set filetype=python ts=4 sw=4 et si
Exemple #29
0
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Initial Owner of the Original Code is European Environment
# Agency (EEA).  Portions created by Finsiel Romania and Eau de Web are
# Copyright (C) European Environment Agency.  All
# Rights Reserved.
#
# Authors:
#
# Alin Voinea, Eau de Web

from ImageFile import ImageFile

misc_ = {
    'EdWideoPlayer.swf': ImageFile('player/EdWideoPlayer.swf', globals()),
    'NyMediaFileLoading.gif': ImageFile('www/NyMediaFileLoading.gif', globals()),
    'NyMediaFileBroken.gif': ImageFile('www/NyMediaFileBroken.gif', globals()),
}