MyCaffe  0.11.2.9-beta1
Deep learning software for Windows C# programmers.
MyCaffe.basecode Namespace Reference

The MyCaffe.basecode contains all generic types used throughout MyCaffe. More...

Namespaces

namespace  descriptors
 The descriptors namespace contains all descriptor used to describe various items stored within the database.
 

Classes

class  Annotation
 The Annotation class is used by annotations attached to SimpleDatum's and used in SSD. More...
 
class  AnnotationGroup
 The AnnoationGroup class manages a group of annotations. More...
 
class  AnnotationGroupCollection
 Defines a collection of AnnotationGroups. More...
 
class  BaseParameter
 The BaseParameter class is the base class for all other parameter classes. More...
 
class  BinaryData
 The BinaryData class is used to pack and unpack DataCriteria binary data, optionally stored within each SimpleDatum. More...
 
class  Bucket
 The Bucket class contains the information describing a single range of values within a BucketCollection. More...
 
class  BucketCollection
 The BucketCollection contains a set of Buckets. More...
 
class  Bytemap
 The Bytemap operates similar to a bitmap but is actually just an array of bytes. More...
 
class  CalculateImageMeanArgs
 The CalculateImageMeanArgs is passed as an argument to the MyCaffeImageDatabase::OnCalculateImageMean event. More...
 
class  CancelEvent
 The CancelEvent provides an extension to the manual cancel event that allows for overriding the manual cancel event. More...
 
class  ColorMapper
 The ColorMapper maps a value within a number range, to a Color within a color scheme. More...
 
class  ConnectInfo
 The ConnectInfo class specifies the server, database and username/password used to connect to a database. More...
 
class  CryptoRandom
 The CryptoRandom is a random number generator that can use either the standard .Net Random objec or the more precise RandomNumberGenerator defined within the System.Security.Cryptograph. More...
 
class  Datum
 The Datum class is a simple wrapper to the SimpleDatum class to ensure compatibility with the original C++ Caffe code. More...
 
class  DirectBitmap
 The DirectBitmap class provides an efficient bitmap creating class. More...
 
class  GenericList
 The GenericList provides a base used to implement a generic list by only implementing the minimum amount of the list functionality. More...
 
interface  IBinaryPersist
 The IBinaryPersist interface provides generic save and load functionality. More...
 
class  ImageData
 The ImageData class is a helper class used to convert between Datum, other raw data, and Images such as a Bitmap. More...
 
class  ImageTools
 The ImageTools class is a helper class used to manipulate image data. More...
 
interface  ITestKnownFailures
 Defines the ITest interface used by the Test module to return its known failures. More...
 
interface  IXImageDatabase1
 The IXImageDatabase interface defines the eneral interface to the in-memory image database. More...
 
interface  IXImageDatabase2
 The IXImageDatabase2 interface defines the general interface to the in-memory image database (v2). More...
 
interface  IXImageDatabaseBase
 The IXImageDatabaseBase interface defines the eneral interface to the in-memory image database. More...
 
class  LabelBBox
 The LabelBBox manages a bounding box used in SSD. More...
 
class  LabelMapping
 The LabelMapping class represents a single label mapping. More...
 
class  LabelMappingCollection
 The LabelMappingCollection manages a collection of LabelMapping's. More...
 
class  LockBitmap
 The LockBitmap class provides very efficient SetPixel and GetPixel functionality of a bitmap by using LockBits to directly access the bitmap data. More...
 
class  Log
 The Log class provides general output in text form. More...
 
class  LogArg
 The LogArg is passed as an argument to the Log::OnWriteLine event. More...
 
class  LogProgressArg
 The LogProgressArg is passed as an argument to the Log::OnProgress event. More...
 
class  NormalizedBBox
 The NormalizedBBox manages a bounding box used in SSD. More...
 
class  OverrideProjectArgs
 The OverrideProjectArgs is passed as an argument to the OnOverrideModel and OnOverrideSolver events fired by the ProjectEx class. More...
 
class  ProjectEx
 The ProjectEx class manages a project containing the solver description, model description, data set (with training data source and testing data source) and project results. More...
 
class  PropertySet
 Specifies a key-value pair of properties. More...
 
class  RawProto
 The RawProto class is used to parse and output Google prototxt file data. More...
 
class  RawProtoCollection
 The RawProtoCollection class is a list of RawProto objects. More...
 
class  RawProtoFile
 The RawProtoFile class writes and reads prototxt to and from a file. More...
 
class  Result
 The Result class contains a single result. More...
 
class  SettingsCaffe
 The SettingsCaffe defines the settings used by the MyCaffe CaffeControl. More...
 
class  SimpleDatum
 The SimpleDatum class holds a data input within host memory. More...
 
class  SimpleDictionary
 The SimpleDictionary is a dictionary used to store a set of key/value pairs, primarily as the DICTIONARY Data Criteria type. More...
 
class  TarFile
 The TarFile functions are used to expand tar files. More...
 
class  Utility
 The Utility class provides general utility funtions. More...
 
class  Valuemap
 The Realmap operates similar to a bitmap but is actually just an array of doubles. More...
 

Enumerations

enum  TRAINING_CATEGORY {
  TRAINING_CATEGORY.NONE, TRAINING_CATEGORY.CUSTOM, TRAINING_CATEGORY.REINFORCEMENT, TRAINING_CATEGORY.RECURRENT,
  TRAINING_CATEGORY.DUAL
}
 Defines the category of training. More...
 
enum  Phase {
  Phase.NONE = 0, Phase.TRAIN = 1, Phase.TEST = 2, Phase.RUN = 3,
  Phase.ALL = 5
}
 Defines the Phase under which to run a Net. More...
 
enum  Stage { Stage.NONE = 0, Stage.RNN = 1, Stage.RL = 2, Stage.ALL = 3 }
 Specifies the stage underwhich to run a custom trainer. More...
 
enum  GYM_TYPE { GYM_TYPE.NONE, GYM_TYPE.DYNAMIC, GYM_TYPE.DATA }
 Defines the gym type (if any). More...
 
enum  DATA_TYPE { DATA_TYPE.DEFAULT, DATA_TYPE.VALUES, DATA_TYPE.BLOB }
 Defines the gym data type. More...
 
enum  IMAGEDB_LOAD_METHOD {
  IMAGEDB_LOAD_METHOD.LOAD_ON_DEMAND, IMAGEDB_LOAD_METHOD.LOAD_ALL, IMAGEDB_LOAD_METHOD.LOAD_EXTERNAL, IMAGEDB_LOAD_METHOD.LOAD_ON_DEMAND_BACKGROUND,
  IMAGEDB_LOAD_METHOD.LOAD_ON_DEMAND_NOCACHE
}
 Defines how to laod the images into the image database. More...
 
enum  SNAPSHOT_WEIGHT_UPDATE_METHOD { SNAPSHOT_WEIGHT_UPDATE_METHOD.DISABLED = -1, SNAPSHOT_WEIGHT_UPDATE_METHOD.FAVOR_ACCURACY, SNAPSHOT_WEIGHT_UPDATE_METHOD.FAVOR_ERROR, SNAPSHOT_WEIGHT_UPDATE_METHOD.FAVOR_BOTH }
 Defines the snapshot weight update method. More...
 
enum  SNAPSHOT_LOAD_METHOD {
  SNAPSHOT_LOAD_METHOD.LAST_STATE = 0, SNAPSHOT_LOAD_METHOD.WEIGHTS_BEST_ACCURACY = 1, SNAPSHOT_LOAD_METHOD.WEIGHTS_BEST_ERROR = 2, SNAPSHOT_LOAD_METHOD.STATE_BEST_ACCURACY = 4,
  SNAPSHOT_LOAD_METHOD.STATE_BEST_ERROR = 8
}
 Defines the snapshot load method. More...
 
enum  ApVersion { ApVersion.ELEVENPOINT, ApVersion.MAXINTEGRAL, ApVersion.INTEGRAL }
 Defines the different way of computing average precision. More...
 
enum  IMGDB_IMAGE_SELECTION_METHOD {
  IMGDB_IMAGE_SELECTION_METHOD.NONE = 0x0000, IMGDB_IMAGE_SELECTION_METHOD.RANDOM = 0x0001, IMGDB_IMAGE_SELECTION_METHOD.PAIR = 0x0002, IMGDB_IMAGE_SELECTION_METHOD.RANDOM_AND_PAIR = 0x0003,
  IMGDB_IMAGE_SELECTION_METHOD.BOOST = 0x0004, IMGDB_IMAGE_SELECTION_METHOD.RANDOM_AND_BOOST = 0x0005, IMGDB_IMAGE_SELECTION_METHOD.RANDOM_AND_PAIR_AND_BOOST = 0x0007, IMGDB_IMAGE_SELECTION_METHOD.FIXEDINDEX = 0x0008,
  IMGDB_IMAGE_SELECTION_METHOD.CLEARFIXEDINDEX = 0x0010
}
 Defines the image selection method. More...
 
enum  IMGDB_LABEL_SELECTION_METHOD { IMGDB_LABEL_SELECTION_METHOD.NONE = 0x0000, IMGDB_LABEL_SELECTION_METHOD.RANDOM = 0x0001, IMGDB_LABEL_SELECTION_METHOD.BOOST = 0x0002 }
 Defines the label selection method. More...
 
enum  IMGDB_SORT {
  IMGDB_SORT.NONE = 0x0000, IMGDB_SORT.BYDESC = 0x0001, IMGDB_SORT.BYTIME = 0x0002, IMGDB_SORT.BYID = 0x0004,
  IMGDB_SORT.BYID_DESC = 0x0008, IMGDB_SORT.BYIDX = 0x0010
}
 Defines the sorting method. More...
 
enum  IMGDB_VERSION { IMGDB_VERSION.V1, IMGDB_VERSION.V2, IMGDB_VERSION.DEFAULT = V2 }
 Defines the image database version to use. More...
 

Detailed Description

The MyCaffe.basecode contains all generic types used throughout MyCaffe.

The MyCaffe.common namespace contains all common objects that make up MyCaffe.

The MyCaffe.param namespace contains all parameter objects that correspond to the native C++ Caffe prototxt file.

Enumeration Type Documentation

◆ ApVersion

Defines the different way of computing average precision.

See also
Tag: Average Precision by Sanchom
Enumerator
ELEVENPOINT 

Specifies the 11-point interpolated average precision, used in VOC2007.

MAXINTEGRAL 

Specifies the maximally interpolated AP, used in VOC2012/ILSVRC.

INTEGRAL 

Specifies the natural integral of the precision-recall curve.

Definition at line 210 of file Interfaces.cs.

◆ DATA_TYPE

Defines the gym data type.

Enumerator
DEFAULT 

Specifies to use the default data type of the gym used.

VALUES 

Specifies to use the raw state values of the gym (if supported).

BLOB 

Specifies to use a SimpleDatum blob of data of the gym (if supported).

Definition at line 111 of file Interfaces.cs.

◆ GYM_TYPE

Defines the gym type (if any).

Enumerator
NONE 

Specifies that the type is not a gym.

DYNAMIC 

Specifies a dynamic gym type that dynamically produces its data.

DATA 

Specifies a data gym that collects data from a data source, such as a database.

Definition at line 92 of file Interfaces.cs.

◆ IMAGEDB_LOAD_METHOD

Defines how to laod the images into the image database.

Enumerator
LOAD_ON_DEMAND 

Load the images as they are queried - this option cahces images into memory as needed, training speeds are slower up until all images are loaded into memory.

LOAD_ALL 

Load all of the images into memory - this option provides the highest training speeds, but can use a lot of memory and takes time to load.

LOAD_EXTERNAL 

Load the images from an external source such as a Windows Service - this option provides the best balance of speed and short load times for once loaded all applications share the in-memory data.

LOAD_ON_DEMAND_BACKGROUND 

Load the image as they are queried AND start the background loading at the same time.

LOAD_ON_DEMAND_NOCACHE 

Load the images on demand, but do not cache the images - this option loads images from disk as needed and does not cache them thus saving memory use.

Definition at line 130 of file Interfaces.cs.

◆ IMGDB_IMAGE_SELECTION_METHOD

Defines the image selection method.

Enumerator
NONE 

No selection method used, select sequentially by index.

RANDOM 

Randomly select the images, ignore the input index.

PAIR 

Pair select the images where the first query returns a randomly selected image, and the next query returns the image just following the last queried image.

RANDOM_AND_PAIR 

Combines RANDOM + PAIR for marshalling.

BOOST 

Randomly select, but given higher priority to boosted images using the super-boost setting.

RANDOM_AND_BOOST 

Combines RANDOM + BOOST for marshalling.

RANDOM_AND_PAIR_AND_BOOST 

Combines RANDOM + PAIR + BOOST for marshalling.

FIXEDINDEX 

Specifically select based on the input index.

CLEARFIXEDINDEX 

Clear the fixed index.

Definition at line 254 of file Interfaces.cs.

◆ IMGDB_LABEL_SELECTION_METHOD

Defines the label selection method.

Enumerator
NONE 

Don't use label selection and instead select from the general list of all images.

RANDOM 

Randomly select the label set.

BOOST 

Randomly select the label set but give a higher priority to boosted label sets using their boost values.

Definition at line 309 of file Interfaces.cs.

◆ IMGDB_SORT

Defines the sorting method.

BYDESC and BYDATE can be compbined which causes the images to be sorted by description first and then by time. BYID cannot be combined with other sorting methods.

Enumerator
NONE 

No sorting performed.

BYDESC 

Sort by description first.

BYTIME 

Sort by time.

BYID 

Sort by image ID.

BYID_DESC 

Sort by image ID in decending order.

BYIDX 

Sort by image Index.

Definition at line 334 of file Interfaces.cs.

◆ IMGDB_VERSION

Defines the image database version to use.

Enumerator
V1 

Specifies to use the original image database.

V2 

Specifies to use the new image database v2.

DEFAULT 

Specifies the default version (currently V2)

Definition at line 373 of file Interfaces.cs.

◆ Phase

Defines the Phase under which to run a Net.

Enumerator
NONE 

No phase defined.

TRAIN 

Run a training phase.

TEST 

Run a testing phase.

RUN 

Run on an image given to the Net.

ALL 

Applies to all phases.

Definition at line 41 of file Interfaces.cs.

◆ SNAPSHOT_LOAD_METHOD

Defines the snapshot load method.

Enumerator
LAST_STATE 

Load the last solver state snapshotted.

WEIGHTS_BEST_ACCURACY 

Load the weights with the best accuracy (which may not be the last).

WEIGHTS_BEST_ERROR 

Load the weights with the best error (which may not be the last).

STATE_BEST_ACCURACY 

Load the state with the best accuracy (which may not be the last).

STATE_BEST_ERROR 

Load the state with the best error (which may not be the last).

Definition at line 180 of file Interfaces.cs.

◆ SNAPSHOT_WEIGHT_UPDATE_METHOD

Defines the snapshot weight update method.

Enumerator
DISABLED 

Disables all snapshots.

FAVOR_ACCURACY 

Update the snapshot weights when the accuracy increases.

FAVOR_ERROR 

Update the snapshot weights when the error decreases.

FAVOR_BOTH 

Update the snapshot weights when the accuracy increases or the error decreases.

Definition at line 157 of file Interfaces.cs.

◆ Stage

Specifies the stage underwhich to run a custom trainer.

Enumerator
NONE 

No stage defined.

RNN 

Run the trainer in RNN mode.

RL 

Run the trainer in RL mode.

ALL 

Applies to all stages.

Definition at line 68 of file Interfaces.cs.

◆ TRAINING_CATEGORY

Defines the category of training.

Enumerator
NONE 

No training category specified.

CUSTOM 

Defines a purely custom training method.

REINFORCEMENT 

Defines the reinforcement training method such as PG.

RECURRENT 

Defines the recurrent training method.

DUAL 

Defines the reinforcement training method such as PG that also uses a recurrent model such as LSTM.

Definition at line 14 of file Interfaces.cs.