diff options
Diffstat (limited to 'app/client/modules')
| -rw-r--r-- | app/client/modules/morph/views/morph.app.js | 4 | ||||
| -rw-r--r-- | app/client/modules/pix2pix/views/pix2pix.live.js | 2 | ||||
| -rw-r--r-- | app/client/modules/pix2pix/views/pix2pix.show.js | 26 | ||||
| -rw-r--r-- | app/client/modules/pix2pixhd/views/pix2pixhd.train.js | 54 | ||||
| -rw-r--r-- | app/client/modules/pix2pixhd/views/sequence.editor.js | 89 |
5 files changed, 132 insertions, 43 deletions
diff --git a/app/client/modules/morph/views/morph.app.js b/app/client/modules/morph/views/morph.app.js index 153fe2b..bd049c4 100644 --- a/app/client/modules/morph/views/morph.app.js +++ b/app/client/modules/morph/views/morph.app.js @@ -66,8 +66,8 @@ class MorphResults extends Component { <div className='heading row middle'> <h1>Morph</h1> </div> - <div class='rows params renders'> - <div class='column'> + <div className='rows params renders'> + <div className='column'> <Group title="From"> <Select title="Starting sequence" diff --git a/app/client/modules/pix2pix/views/pix2pix.live.js b/app/client/modules/pix2pix/views/pix2pix.live.js index b6765ed..2b59656 100644 --- a/app/client/modules/pix2pix/views/pix2pix.live.js +++ b/app/client/modules/pix2pix/views/pix2pix.live.js @@ -151,7 +151,7 @@ class Pix2PixLive extends Component { > </ParamGroup> - <p class='last_message'>{this.props.last_message}</p> + <p className='last_message'>{this.props.last_message}</p> </ParamGroup> </div> <div className='column'> diff --git a/app/client/modules/pix2pix/views/pix2pix.show.js b/app/client/modules/pix2pix/views/pix2pix.show.js index 02a009e..4f57fac 100644 --- a/app/client/modules/pix2pix/views/pix2pix.show.js +++ b/app/client/modules/pix2pix/views/pix2pix.show.js @@ -41,8 +41,8 @@ class Pix2pixShow extends Component { return ( <div className='app pix2pix'> - <div class='heading'> - <div class='spaced'> + <div className='heading'> + <div className='spaced'> <h1>{folder ? folder.name : <Loading />}</h1> <UploadStatus /> </div> @@ -89,24 +89,24 @@ class Pix2pixShow extends Component { console.log(dataset) return ( <div> - <div class={'actions'}> - <span class='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 1)}>train</span> - <span class='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 5)}>5x</span> - <span class='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 10)}>10x</span> - <span class='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 20)}>20x</span> - <span class='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 50)}>50x</span> + <div className={'actions'}> + <span className='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 1)}>train</span> + <span className='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 5)}>5x</span> + <span className='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 10)}>10x</span> + <span className='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 20)}>20x</span> + <span className='link' onClick={() => remote.train_task(dataset, pix2pix.folder_id, 50)}>50x</span> </div> {dataset.isBuilt - ? <div class='subtext'> + ? <div className='subtext'> {'fetched '} - <span class='link' onClick={() => remote.clear_cache_task(dataset)}>rm</span> + <span className='link' onClick={() => remote.clear_cache_task(dataset)}>rm</span> </div> : isFetching - ? <div class='subtext'> + ? <div className='subtext'> {'fetching'} </div> - : <div class='subtext'> - <span class='link' onClick={() => remote.fetch_task(input.url, input.id, dataset.name)}>fetch</span> + : <div className='subtext'> + <span className='link' onClick={() => remote.fetch_task(input.url, input.id, dataset.name)}>fetch</span> </div> } </div> diff --git a/app/client/modules/pix2pixhd/views/pix2pixhd.train.js b/app/client/modules/pix2pixhd/views/pix2pixhd.train.js index 06caa5a..957b068 100644 --- a/app/client/modules/pix2pixhd/views/pix2pixhd.train.js +++ b/app/client/modules/pix2pixhd/views/pix2pixhd.train.js @@ -114,6 +114,33 @@ class Pix2PixHDTrain extends Component { value={this.state.epoch} /> </Group> + <Group title='Augmentation Grid'> + <AugmentationGrid + checkpoint={this.props.pix2pixhd.checkpoint} + take={[1,2,3,4,5,10,15,20,25,50,75,100,200,300,400,500,1000]} + make={[1,2,3,4,5,10,15,20,25,50,75,100,200,]} + onAugment={(augment_take, augment_make) => { + this.props.remote.augment_task(this.state.checkpoint_name, { + ...this.state, + augment_take, + augment_make, + }) + }} + onTrain={() => { + this.props.remote.train_task(this.state.checkpoint_name, pix2pixhd.folder_id, 1) + setTimeout(() => { // auto-generate epoch demo + this.props.remote.augment_task(this.state.checkpoint_name, { + ...this.state, + augment_take: 10, + augment_make: 150, + no_symlinks: true, + mov: true, + folder_id: this.props.pix2pixhd.data.resultsFolder.id + }) + }, 250) + }} + /> + </Group> <Group title='Augment'> <NumberInput name="augment_take" @@ -151,33 +178,6 @@ class Pix2PixHDTrain extends Component { }} /> </Group> - <Group title='Augmentation Grid'> - <AugmentationGrid - checkpoint={this.props.pix2pixhd.checkpoint} - take={[1,2,3,4,5,10,15,20,25,50,75,100,200,300,400,500,1000]} - make={[1,2,3,4,5,10,15,20,25,50,75,100,200,]} - onAugment={(augment_take, augment_make) => { - this.props.remote.augment_task(this.state.checkpoint_name, { - ...this.state, - augment_take, - augment_make, - }) - }} - onTrain={() => { - this.props.remote.train_task(this.state.checkpoint_name, pix2pixhd.folder_id, 1) - setTimeout(() => { // auto-generate epoch demo - this.props.remote.augment_task(this.state.checkpoint_name, { - ...this.state, - augment_take: 10, - augment_make: 150, - no_symlinks: true, - mov: true, - folder_id: this.props.pix2pixhd.data.resultsFolder.id - }) - }, 250) - }} - /> - </Group> <Group title='Status'> <Button diff --git a/app/client/modules/pix2pixhd/views/sequence.editor.js b/app/client/modules/pix2pixhd/views/sequence.editor.js new file mode 100644 index 0000000..9693805 --- /dev/null +++ b/app/client/modules/pix2pixhd/views/sequence.editor.js @@ -0,0 +1,89 @@ +import { h, Component } from 'preact' +import { bindActionCreators } from 'redux' +import { connect } from 'react-redux' +import { Route, Link } from 'react-router-dom' + +import { Loading, FileList, FileViewer } from '../../common' + +import actions from '../actions' + +class SequenceEditor extends Component { + state = { + dir: '/', + files: [], + loading: true + } + componentDidMount() { + this.fetch(this.state.dir) + } + handlePick(file) { + console.log(file) + if (file.dir) { + this.fetch([this.state.dir, file.name].join('/').replace('//','/')) + } else { + this.fetchFile([this.state.dir, file.name].join('/').replace('//','/')) + } + } + fetch(dir) { + console.log('fetch', dir) + const { tool: module } = this.props.app + this.setState({ dir, file: null, loading: true }) + actions.socket.list_directory({ module, dir }).then(files => { + console.log(files) + this.setState({ dir, files, loading: false }) + }) + } + fetchFile(fn) { + console.log('fetch file', fn) + const { tool: module } = this.props.app + this.setState({ file: null, loadingFile: true }) + actions.socket.read_file({ module, fn }).then(file => { + console.log(file) + this.setState({ file, loadingFile: false }) + }) + } + render() { + const { app } = this.props + const { + loading, dir, files, + loadingFile, file, + } = this.state + console.log(this.props, this.state) + // return ( + // <div className='app browser'> + // <h1>{dir}{dir[dir.length-1] !== '/' && '/'}</h1> + // {app.tool}<br/> + // {loading && <Loading />} + // <FileList + // files={files} + // groupDirectories + // parentDirectory={dir !== '/'} + // orderBy='name asc' + // fields={'name datetime size'} + // onClick={(file, e) => { + // e.preventDefault() + // e.stopPropagation() + // console.log('picked a result', file) + // this.handlePick(file) + // }} + // onClickParent={e => { + // console.log('navigate up') + // this.fetch(this.state.dir.split('/').slice(0, -1).join('/') || '/') + // }} + // /> + // {loadingFile && <Loading />} + // {file && <FileViewer file={file} />} + // </div> + // ) + } +} + +const mapStateToProps = state => ({ + app: state.system.app, +}) + +const mapDispatchToProps = (dispatch, ownProps) => ({ + actions: bindActionCreators({}, dispatch), +}) + +export default connect(mapStateToProps, mapDispatchToProps)(SequenceEditor) |
