[Diffusion] Add StableDiffusionInpaint pipeline (#760)

* Update Inpaint pipeline

* Update concat

* Add GaussianRandomKernel

* Update GaussianRandom

* Add vae endoder

* Add unet infer

* Add vae decoder predict

* add PrepareMaskAndMaskedImage

* Add imwrite

* Add time counter

* Fix pipeline

* use FDTensor move

* Fix scaled_linear dpm solver

* Add RGB2BGR
This commit is contained in:
Jack Zhou
2022-12-02 19:30:32 +08:00
committed by GitHub
parent 9531e99948
commit d74e1209ae
12 changed files with 639 additions and 59 deletions

View File

@@ -19,13 +19,16 @@
namespace fastdeploy {
class Scheduler {
public:
virtual void SetTimesteps(int num_inference_steps) = 0;
virtual FDTensor GetTimesteps() = 0;
virtual void Step(const FDTensor& model_output, int timestep,
const FDTensor& sample, FDTensor* prev_sample) = 0;
virtual void ScaleModelInput(const FDTensor& sample, FDTensor* out,
const std::vector<FDTensor>& timesteps = {}) = 0;
virtual void AddNoise(const FDTensor& original_samples, const FDTensor& noise,
const FDTensor& timesteps, FDTensor* out) = 0;
virtual float InitNoiseSigma() = 0;
};
} // namespace fastdeploy