captcha

package module
v0.0.0-...-03cbb69 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2014 License: MIT Imports: 21 Imported by: 0

README

captcha

captcha

Documentation

Index

Constants

View Source
const (
	NUMBER, ALPHA, MIX = 0, 1, 2
)
View Source
const SCALE_HEIGHT = 32

Variables

This section is empty.

Functions

func CopyImage

func CopyImage(img image.Image) image.Image

func FindBeginPos

func FindBeginPos(img *cv.BinaryImage, beginX int) (int, int)

func FindEndPos

func FindEndPos(img *cv.BinaryImage, beginX int) int

func GetChType

func GetChType(buf string) int

func LoadImage

func LoadImage(fname string) image.Image

func LoadImageFromFile

func LoadImageFromFile(fname string) image.Image

func LoadImageFromURL

func LoadImageFromURL(link string, proxy string, pageLink string) image.Image

func SaveImage

func SaveImage(img image.Image, name string)

Types

type BinaryImageConnectedComponentPredictor

type BinaryImageConnectedComponentPredictor struct {
	Dx, Dy int
}

func (*BinaryImageConnectedComponentPredictor) Guess

func (self *BinaryImageConnectedComponentPredictor) Guess(img *cv.BinaryImage, mki *MaskIndex, chType int) []*Result

type BinaryImagePredictor

type BinaryImagePredictor interface {
	Guess(img *cv.BinaryImage, mki *MaskIndex, chType int) []*Result
}

type CaptchaHandler

type CaptchaHandler struct {
	Masks *MaskIndex
	Links []string
}

func NewCaptchaHandler

func NewCaptchaHandler() *CaptchaHandler

func (*CaptchaHandler) ServeHTTP

func (self *CaptchaHandler) ServeHTTP(w http.ResponseWriter, req *http.Request)

type ConnectedComponentPredictor

type ConnectedComponentPredictor struct {
	Dx, Dy int
}

func (*ConnectedComponentPredictor) Guess

func (self *ConnectedComponentPredictor) Guess(img image.Image, mki *MaskIndex, chType int) []*Result

type Decoder

type Decoder struct {
	ImageProcessors       []cv.ImageProcessor
	BiColorProcessor      cv.BiColorProcessor
	BinaryImageProcessors []cv.BinaryImageProcessor
	BinaryImagePredictor  BinaryImagePredictor
	ImagePredictor        ImagePredictor
}

func (*Decoder) Predict

func (self *Decoder) Predict(img image.Image, mki *MaskIndex, chType int) []*Result

type FastCutBasedPredictor

type FastCutBasedPredictor struct {
}

func (*FastCutBasedPredictor) CutMatrixByRect

func (self *FastCutBasedPredictor) CutMatrixByRect(img *cv.BinaryImage, left, top, right, bottom int) *cv.BinaryImage

func (*FastCutBasedPredictor) FindNextSplitPoints

func (self *FastCutBasedPredictor) FindNextSplitPoints(img *cv.BinaryImage, sx int, h []int) []int

func (*FastCutBasedPredictor) Guess

func (self *FastCutBasedPredictor) Guess(img *cv.BinaryImage, mki *MaskIndex, chType int) []*Result

func (*FastCutBasedPredictor) XHis

func (self *FastCutBasedPredictor) XHis(img *cv.BinaryImage) []int

type ImagePredictor

type ImagePredictor interface {
	Guess(img image.Image, mki *MaskIndex, chType int) []*Result
}

type Mask

type Mask struct {
	Img   *cv.BinaryImage
	Label string
}

func NewMask

func NewMask(line string) *Mask

func (*Mask) FromString

func (self *Mask) FromString(line string)

func (*Mask) Match

func (self *Mask) Match(src *cv.BinaryImage, srcLeft int, srcTop int) float64

func (*Mask) MatchChType

func (self *Mask) MatchChType(chType int) bool

func (*Mask) ToString

func (self *Mask) ToString() string

type MaskIndex

type MaskIndex struct {
	// contains filtered or unexported fields
}

func LoadMasks

func LoadMasks(folder string) *MaskIndex

func NewMaskIndex

func NewMaskIndex() *MaskIndex

func (*MaskIndex) AddMask

func (self *MaskIndex) AddMask(mk *Mask)

func (*MaskIndex) Clear

func (self *MaskIndex) Clear()

func (*MaskIndex) FindBestMatchedMasks

func (self *MaskIndex) FindBestMatchedMasks(img *cv.BinaryImage, chType int, widthWeight int) []*Result

func (*MaskIndex) Masks

func (self *MaskIndex) Masks() []*Mask

func (*MaskIndex) QueryMask

func (self *MaskIndex) QueryMask(img *cv.BinaryImage) ([]int, bool)

type MetaPredictor

type MetaPredictor struct {
	// contains filtered or unexported fields
}

func NewMetaPredictor

func NewMetaPredictor() *MetaPredictor

func (*MetaPredictor) Predict

func (self *MetaPredictor) Predict(img image.Image, mki *MaskIndex, chType int) []*Result

type Result

type Result struct {
	Label      string
	Weight     float64
	Components []*cv.BinaryImage
}

func GenerateResults

func GenerateResults(results [][]*Result) []*Result

func NewResult

func NewResult(label string, weight float64) *Result

func (*Result) AddComponent

func (self *Result) AddComponent(img *cv.BinaryImage)

func (*Result) GetWeight

func (self *Result) GetWeight() float64

type ResultSorter

type ResultSorter []*Result

func (ResultSorter) Len

func (ms ResultSorter) Len() int

func (ResultSorter) Less

func (ms ResultSorter) Less(i, j int) bool

func (ResultSorter) Swap

func (ms ResultSorter) Swap(i, j int)

type TestImage

type TestImage struct {
	Label  string
	ChType int
	Img    image.Image
	Path   string
}

func LoadTestImages

func LoadTestImages(folder string) []*TestImage

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL